vue简单class切换
2018-02-01 18:35
211 查看
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.jsdelivr.net/npm/vue"></script> <style> .text-success { color: red; } </style> </head> <body> <div id="app"> <ol> <!--循环options选项--> <li v-for="(option,index) in options"> <!--三目运算,判断是否显示class='text-success'--> <p v-bind:class="[option.active ? 'text-success' : '']" v-on:click="addClass(index)">Text:{{option.key}}--Value:{{option.price}}--index:{{index}}--option:{{option.active}}</p> </li> </ol> </div> <script> var app = new Vue({ el: '#app', data: { /*选项*/ options: [ /*默认第一个显示Class*/ {key: '苹果', price: '20', active: true}, {key: '香蕉', price: '30', active: false}, {key: '鸭梨', price: '40', active: false}, {key: '草莓', price: '50', active: false} ], /*变量保存上一次点击的index值*/ upIndex: '' }, methods: { addClass: function (index) { /*移除默认显示的class*/ this.options[0].active = false; /*判断upIndex是否为空*/ if (this.upIndex !== '') { /*判断upIndex是否等于当前点击的index*/ if (this.upIndex !== index) { /*当前点击的 index 的怕 P 元素显示class*/ this.options[index].active = true; /*移除上一次点击的 P 元素的*/ this.options[this.upIndex].active = false; /*保存index*/ this.upIndex = index; } } else { /*当前点击的index的class显示*/ this.options[index].active = true; /*保存upIndex*/ this.upIndex = index; } } } }) </script> </body> </html>
相关文章推荐
- Vue 菜单栏点击切换单个class(高亮),超简单!
- vue 切换 class (切换类) toggleClass 单选 多选
- Vue点击切换class
- vue的:class={active:activ}可以动态切换class类名
- vue实现切换class(与style的绑定)
- vue里如何实现tab类似的切换class?
- vue最简单的点击切换active
- Vue点击切换class
- vue2.0 实现click点击当前li,动态切换class
- vue 三元表达式class、图片切换 (涉及计算属性)
- vue--切换class
- vue class and style学习(简单记录)
- vue 点击切换变色 tab 改变class 跳转链接
- Angularjs切换网站配色模式简单示例2(切换body元素的class)
- Vue 菜单栏点击切换单个class(高亮)的方法
- vue-cli起的webpack项目 用localhost可以访问,但是切换到ip就不可以访问
- jq实现简单的tab切换效果
- Vue+Flask实现简单的登录验证跳转
- C++中class的简单使用
- css基础 class选择器 简单示例