Vue2.0点击切换类名改变样式的方法


Posted in Javascript onAugust 22, 2018

1、使用index

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>vue导航</title>
 <style media="screen">
 *{
 margin:0;
 padding: 0;
 }
 ul li{
 list-style: none;
 }
 .navul{
 margin:100px auto 20px;
 overflow: hidden;
 }
 .navul li{
 background-color: #5597b4;
 padding:18px 30px;
 float:left;
 color: #fff;
 font-size: 18px;
 cursor: pointer;
 }
 .active{
 background-color: #5597b4;
 }
 .home .home,.new .new,.contact .contact,.service .service{
 background-color: skyblue;
 }
 .checked{
  background: #eff4f7;
 }
 </style>
</head>
<body>
 <div id="nav">
  <ul>
   <li v-for="(relation,index) in relations" v-bind:id="relation.id" v-bind:id="relation.id" v-bind:class="{checked:index==nowIndex}" v-on:click="relationClick(index)">
    <i></i>
    <span class="">{{relation.text}}</span>
   </li>
  </ul>
 </div>
 
 <script src="js/vue.js" charset="utf-8"></script>
 <script type="text/javascript">
 var nav = new Vue({
  el:'#nav',
  data:{
  relations: [
   {text:'项目',id:'program'},
   {text:'人员',id:'person'},
   {text:'机构',id:'organization'},
   {text:'技术',id:'tech'},
   {text:'地区',id:'location'},
   {text:'国家',id:'country'}
  ],
  nowIndex:0
  // willShow:false
  },
  methods:{
  relationClick:function(index){
   
   this.nowIndex=index;
  }
  }
 });
 </script>
</body>
</html>

2、通过改变当前值切换类名

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>点击切换</title>
 <style>
 .glyphicon-minus{
  color:#08f;
 }
 .glyphicon-plus{
  color:purple;
 }
 
 </style>
 <script src="js/vue.js"></script>
</head>
<body>
 
 <div id="box">
  <div style="width:100px; height:100px; background: #6bacdf;" v-show="isDisplay"></div>
 
  <div class="form-group">
  <button class="btn"
    :class="[isShow?'btn-primary':'']"
    @mouseover="toggleShow()"
    @mouseout="toggleShow()"
    v-text="btnStyle"></button>
 
  </div>
 
  <div class="">
  <button class="btn"
    :class="[isTrue?'glyphicon-minus':'glyphicon-plus']"
     @click="toggleBar()">切换类名按钮</button>
 
  </div>
 </div>
 
 
<script type="text/javascript">
 
 
  new Vue({
  el:'#box',
  data:{
   isDisplay:false,
   isShow: false,
   isTrue:true,
   btnStyle: 'Default'
  },
  methods:{
   toggleShow: function() {
   this.isShow = !this.isShow;
   },
   toggleBar:function(){
   this.isTrue = !this.isTrue;
   }
  },
  watch: {
   isShow: function(newVal) {
   // console.log(newVal);
   newVal ? this.btnStyle = 'Primary' : this.btnStyle = 'Default'
   }
  },
  });
 
 
 </script>
</body>
</html>

拓展知识:vue点击改变样式的实例

data里

isActive:-1,

method里

checkedItem(index){
 this.isActive=index;
},

页面里

<div v-for="(item,index) in nameoptions" v-bind:class="{active:index==isActive}" @click="checkItem(index)>{{item.name}}</div>

以上这篇Vue2.0点击切换类名改变样式的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 在光标定位的地方插入文字的插件
May 10 Javascript
js 验证密码强弱的小例子
Mar 21 Javascript
JS+CSS实现淡入式焦点图片幻灯切换效果的方法
Feb 26 Javascript
Jquery ui datepicker设置日期范围,如只能隔3天【实现代码】
May 04 Javascript
简易的JS计算器实现代码
Oct 18 Javascript
jQuery EasyUi 验证功能实例解析
Jan 06 Javascript
JavaScript数据结构之优先队列与循环队列实例详解
Oct 27 Javascript
BootStrap modal实现拖拽功能
Dec 01 Javascript
详解@Vue/Cli 3 Invalid Host header 错误解决办法
Jan 02 Javascript
Vue实现表格批量审核功能实例代码
May 28 Javascript
layui--select使用以及下拉框实现键盘选择的例子
Sep 24 Javascript
JavaScript工具库MyTools详解
Jan 01 Javascript
vuejs选中当前样式active的实例
Aug 22 #Javascript
详解如何在webpack中做预渲染降低首屏空白时间
Aug 22 #Javascript
基于vue中对鼠标划过事件的处理方式详解
Aug 22 #Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
Aug 22 #Javascript
JS封装的模仿qq右下角消息弹窗功能示例
Aug 22 #Javascript
当vue路由变化时,改变导航栏的样式方法
Aug 22 #Javascript
element-ui 设置菜单栏展开的方法
Aug 22 #Javascript
You might like
php页面跳转session cookie丢失导致不能登录等问题的解决方法
2016/12/12 PHP
jQuery Jcrop插件实现图片选取功能
2011/11/23 Javascript
jQuery.extend 函数详解
2012/02/03 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
js 动态生成json对象、时时更新json对象的方法
2016/12/02 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
深入nodejs中流(stream)的理解
2017/03/27 NodeJs
微信小程序页面传值实例分析
2017/04/19 Javascript
详解nodejs异步I/O和事件循环
2017/06/07 NodeJs
Node.js如何实现注册邮箱激活功能 (常见)
2017/07/23 Javascript
Express使用html模板的详细代码
2017/09/18 Javascript
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
js实现小时钟效果
2020/03/25 Javascript
JavaScript实现鼠标移入随机变换颜色
2020/11/24 Javascript
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
用TensorFlow实现戴明回归算法的示例
2018/05/02 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
django 微信网页授权登陆的实现
2019/07/30 Python
python基础教程之while循环
2019/08/14 Python
CSS3字体效果的设置方法小结
2016/06/13 HTML / CSS
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
联想哥伦比亚网上商城:Lenovo Colombia
2017/01/10 全球购物
GetYourGuide台湾:预订旅游活动、景点和旅游项目
2019/06/10 全球购物
经济管理毕业生求职信
2014/03/15 职场文书
遗体告别仪式主持词
2014/03/20 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
班级心理活动总结
2014/07/04 职场文书
学生会竞选演讲稿纪检部
2014/08/25 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
住房抵押登记委托书
2014/09/27 职场文书
庆祝教师节活动总结
2015/03/23 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
MySQL 分区表中分区键为什么必须是主键的一部分
2022/03/17 MySQL