1. !DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=no,width=device-width">
  7. <meta name="apple-mobile-web-app-title" content="Vue选项卡">
  8. <title>Vue实现选项卡</title>
  9. <script type="text/javascript" src="../js/vue.js"></script>
  10. </head>
  11. <style>
  12. * {
  13. padding: 0;
  14. margin: 0;
  15. }
  16. .box {
  17. width: 800px;
  18. height: 200px;
  19. margin: 0 auto;
  20. border: 1px solid #000;
  21. }
  22. .tabs li {
  23. float: left;
  24. margin-right: 8px;
  25. list-style: none;
  26. }
  27. .tabs .tab-link {
  28. display: block;
  29. width: 250px;
  30. height: 49px;
  31. text-align: center;
  32. line-height: 49px;
  33. background-color: #5597B4;
  34. color: #fff;
  35. text-decoration: none;
  36. }
  37. .tabs .tab-link.active {
  38. height: 47px;
  39. border-bottom: 2px solid #E35885;
  40. transition: .3s;
  41. }
  42. .cards {
  43. float: left;
  44. }
  45. .cards .tab-card {
  46. display: none;
  47. }
  48. .clearfix:after {
  49. content: "";
  50. display: block;
  51. height: 0;
  52. clear: both;
  53. }
  54. .clearfix {
  55. zoom: 1;
  56. }
  57. </style>
  58. <body>
  59. <div id="app" class="box">
  60. <ul class="tabs clearfix">
  61. <li v-for="(tab,index) in tabsName">
  62. <a href="#" class="tab-link" @click="tabsSwitch(index)" v-bind:class="{active:tab.isActive}">{{tab.name}}</a>
  63. </li>
  64. </ul>
  65. <div class="cards">
  66. <div class="tab-card" style="display: block;">这里是HTML教程</div>
  67. <div class="tab-card">欢迎来到CSS模块</div>
  68. <div class="tab-card">嗨,这里是Vue</div>
  69. </div>
  70. </div>
  71. </body>
  72. <script>
  73. var app = new Vue({
  74. el: "#app",
  75. data: {
  76. tabsName: [{
  77. name: "HTML",
  78. isActive: true
  79. }, {
  80. name: "CSS",
  81. isActive: false
  82. }, {
  83. name: "Vue",
  84. isActive: false
  85. }],
  86. active: false
  87. },
  88. methods: {
  89. tabsSwitch: function(tabIndex) {
  90. var tabCardCollection = document.querySelectorAll(".tab-card"),
  91. len = tabCardCollection.length;
  92. for(var i = 0; i < len; i++) {
  93. tabCardCollection[i].style.display = "none";
  94. this.tabsName[i].isActive = false;
  95. }
  96. this.tabsName[tabIndex].isActive = true;
  97. tabCardCollection[tabIndex].style.display = "block";
  98. }
  99. }
  100. })
  101. </script>
  102. </html>

vue 选项卡(转载)的更多相关文章

  1. vue 插件tab选项卡(转载)

    <template> <tab :options="tabOpt" :state.sync="stateIndex"></tab& ...

  2. Vue学习心得----新手如何学习Vue(转载)

    ps:本文并非原著,转载自:https://www.cnblogs.com/buzhiqianduan/p/7620102.html,请悉知 前言 使用vue框架有一段时间了,这里总结一下心得,主要为 ...

  3. 2017 年比较 Angular、React、Vue 三剑客(转载)

    为 web 应用选择 JavaScript 开发框架是一件很费脑筋的事.现如今 Angular 和 React 非常流行,并且最近出现的新贵 VueJS 同样博得了很多人的关注.更重要的是,这只是一些 ...

  4. vue 选项卡

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script sr ...

  5. vue实例-转载

    http://blog.csdn.net/yuanyuanispeak/article/details/73526795

  6. 看JQ时代过来的前端,如何转换思路用Vue打造选项卡组件

    前言 在Vue还未流行的时候,我们都是用JQuery来封装一个选项卡插件,如今Vue当道,让我们一起来看看从JQ时代过来的前端是如何转换思路,用数据驱动DOM的思想打造一个Vue选项卡组件. 接下来, ...

  7. vue的选项卡功能

    选项卡:点击不同的按钮会显示不同的内容 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...

  8. vue调试神器vue-devtools安装

    vue-devtools安装 vue-devtools是一款用来调试Vue应用的Chrome插件,可极大提高开发者调试项目效率,接着我们说一下如何下载安装这个插件; 一. 从chrome商店直接下载安 ...

  9. day 73 初学vue (1)

    前情提要: vue 框架的初学习, 主要是,指令,属性,函数,计算属性,监听属性,钩子,生命周期,过滤器,阻止事件和综合案例todo list 学习准备,感谢学习资源: vue 官网:https:// ...

随机推荐

  1. Verilog_Day2_Plus

    内容为书中第4章 等式运算符 “==” 与 “===” 的区别 Verilog中存在4种等式运算符: == (等于); != (不等于); === (等于); !== (不等于). “==”与&quo ...

  2. 《Java 程序设计》实验报告汇总

    <Java 程序设计>实验报告汇总 20145207<Java程序设计>实验一 (Java开发环境的熟悉)实验报告 20145207<Java程序设计>实验二 (J ...

  3. pythonDjango开发-自定义模板标签

    1.在APP同级目录新建文件夹'templatetags' 并在文件夹下创建__init__.py和定义标签用的customer.py文件 2.在customer.py文件中定义自定义标签 from ...

  4. 二维码Aztec简介及其解码实现(zxing-cpp)

    Aztec Code是1995年,由Hand HeldProducts公司的Dr. Andrew Longacre设计.它是一种高容量的二维条形码格式.它可以对ASCII和扩展ASCII码进行编码.当 ...

  5. 【HNOI2015】开店

    题面 题解 树链剖分 + 主席树 先考虑一个简单一点的问题: [LNOI2014]LCA 我们考察\(dep[\mathrm{LCA}(i, x)]\)的性质,发现它是\(i\)和\(x\)的链交的长 ...

  6. CF 348 D. Turtles

    D. Turtles 链接 题意: 给定一个N*M的棋盘,有些格子不能走,问有多少种从(1,1)到(N,M)的两条不相交路径. 分析: lGV定理. 定理:点集A={a1,a2,…an}A={a1,a ...

  7. SQL Server 创建带返回值的存储过程

    --drop procedure zcstest; create procedure zcstest ( @tableName varchar(max), @dataCount int output ...

  8. Spring的IOC理解(转载)

    学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清的,是很难理解的,今天和大家 ...

  9. springmvc controller转发setViewName时找不到路径的问题以及转发视图时出现找不到样式的问题

    注释掉的部分是错误的写法,@RequestMapping 需要将方法放置在要转发的视图所在目录下,不然视图会找不到样式(无法正确的加载css文件), 如果将方法放在了视图所在目录下,那么 setUie ...

  10. Spring学习(十四)----- Spring Auto Scanning Components —— 自动扫描组件

    一.      Spring Auto Scanning Components —— 自动扫描组件 1.      Declares Components Manually——手动配置componen ...