经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » Vue.js » 查看文章
vue实现选项卡小案例
来源:jb51  时间:2022/4/11 14:27:09  对本文有异议

本文实例为大家分享了vue实现选项卡小案例的具体代码,供大家参考,具体内容如下

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. ?
  4. <head>
  5. ? ? <meta charset="UTF-8">
  6. ? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. ? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. ? ? <title>Document</title>
  9. </head>
  10. <style>
  11. ? ? * {
  12. ? ? ? ? padding: 0;
  13. ? ? ? ? margin: 0;
  14. ? ? }
  15. ? ??
  16. ? ? ul {
  17. ? ? ? ? list-style: none;
  18. ? ? }
  19. ? ??
  20. ? ? #app {
  21. ? ? ? ? width: 480px;
  22. ? ? ? ? margin: 20px auto;
  23. ? ? ? ? border: 1px solid cornflowerblue;
  24. ? ? }
  25. ? ??
  26. ? ? ul {
  27. ? ? ? ? width: 100%;
  28. ? ? ? ? overflow: hidden;
  29. ? ? }
  30. ? ??
  31. ? ? ul li {
  32. ? ? ? ? float: left;
  33. ? ? ? ? width: 160px;
  34. ? ? ? ? height: 60px;
  35. ? ? ? ? line-height: 60px;
  36. ? ? ? ? text-align: center;
  37. ? ? ? ? background-color: #cccccc;
  38. ? ? }
  39. ? ??
  40. ? ? ul li a {
  41. ? ? ? ? text-decoration: none;
  42. ? ? ? ? color: black;
  43. ? ? }
  44. ? ??
  45. ? ? p {
  46. ? ? ? ? height: 200px;
  47. ? ? ? ? text-align: center;
  48. ? ? ? ? line-height: 200px;
  49. ? ? ? ? background-color: #fff;
  50. ? ? }
  51. ? ??
  52. ? ? li.active {
  53. ? ? ? ? background-color: cornflowerblue;
  54. ? ? }
  55. ? ? /* 有这个类名的p标签,显示 */
  56. ? ??
  57. ? ? p.active {
  58. ? ? ? ? display: block;
  59. ? ? }
  60. ? ??
  61. ? ? img {
  62. ? ? ? ? width: 100%;
  63. ? ? }
  64. </style>
  65. ?
  66. <body>
  67. ? ? <div id="app">
  68. ? ? ? ? <ul>
  69. ? ? ? ? ? ? <!-- :class中可以写三元(index==cur?'active':''),也可以写方法 ?:class相当于v-bind:class ?-->
  70. ? ? ? ? ? ? <!--使用for遍历li 要加上:key ,再添加一个点击事件-->
  71. ? ? ? ? ? ? <li :class="isActive(index)" v-for="(item,index) in list" :key="item.id" @click="toggle(index)">
  72. ? ? ? ? ? ? ? ? <!-- 通过插值把名字显示到页面 -->
  73. ? ? ? ? ? ? ? ? <a href="javascript:;" rel="external nofollow" >{{item.name}}</a>
  74. ? ? ? ? ? ? </li>
  75. ? ? ? ? </ul>
  76. ? ? ? ? <!-- v-show显示,index和cur一样才显示 -->
  77. ? ? ? ? <!--使用for遍历li 要加上:key ,再添加一个点击事件-->
  78. ? ? ? ? <p v-show="index==cur" v-for="(item,index) in list" :key="item.id">
  79. ? ? ? ? ? ? <!-- 只有用v-bind进行数据绑定 才能在src中使用item.img -->
  80. ? ? ? ? ? ? <img :src="item.img" alt="">
  81. ? ? ? ? </p>
  82. ? ? </div>
  83. ? ? <!--?
  84. ? ? 1.将所有的图片都隐藏
  85. ? ? 2.默认第一个按钮有激活的样式
  86. ? ? 3.点击哪一个按钮,给哪一个按钮添加激活样式
  87. ? ?-->
  88. ? ? <script src="../vue.js"></script>
  89. ? ? <script>
  90. ? ? ? ? new Vue({
  91. ? ? ? ? ? ? el: "#app",
  92. ? ? ? ? ? ? /* 数据 */
  93. ? ? ? ? ? ? data: {
  94. ? ? ? ? ? ? ? ? /* 定义一个显示元素的索引 */
  95. ? ? ? ? ? ? ? ? cur: 0,
  96. ? ? ? ? ? ? ? ? list: [{
  97. ? ? ? ? ? ? ? ? ? ? id: 1,
  98. ? ? ? ? ? ? ? ? ? ? name: "鞠婧祎",
  99. ? ? ? ? ? ? ? ? ? ? img: "./img/1.jpg"
  100. ? ? ? ? ? ? ? ? }, {
  101. ? ? ? ? ? ? ? ? ? ? id: 2,
  102. ? ? ? ? ? ? ? ? ? ? name: "李沁",
  103. ? ? ? ? ? ? ? ? ? ? img: "./img/2.jpg"
  104. ? ? ? ? ? ? ? ? }, {
  105. ? ? ? ? ? ? ? ? ? ? id: 3,
  106. ? ? ? ? ? ? ? ? ? ? name: "易烊千玺",
  107. ? ? ? ? ? ? ? ? ? ? img: "./img/3.jpg"
  108. ? ? ? ? ? ? ? ? }]
  109. ? ? ? ? ? ? },
  110. ? ? ? ? ? ? methods: {
  111. ? ? ? ? ? ? ? ? /* 判断是否要激活 */
  112. ? ? ? ? ? ? ? ? isActive(index) {
  113. ? ? ? ? ? ? ? ? ? ? return index == this.cur ? "active" : ""
  114. ? ? ? ? ? ? ? ? },
  115. ? ? ? ? ? ? ? ? // ?点击li标签改变cur的值,实现切换效果
  116. ? ? ? ? ? ? ? ? // index是接受上面 @click中方法传递过来的index。
  117. ? ? ? ? ? ? ? ? toggle(index) {
  118. ? ? ? ? ? ? ? ? ? ? this.cur = index
  119. ? ? ? ? ? ? ? ? }
  120. ? ? ? ? ? ? }
  121. ? ? ? ? })
  122. ? ? </script>
  123. ?
  124. </body>
  125. </html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号