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 相关文章推荐
Javascript 类与静态类的实现
Apr 01 Javascript
Javascript小技巧之生成html元素
May 15 Javascript
使用jQuery UI库开发Web界面的简单入门指引
Apr 22 Javascript
第四篇Bootstrap网格系统偏移列和嵌套列
Jun 21 Javascript
jQuery实现获取元素索引值index的方法
Sep 18 Javascript
浅谈在js传递参数中含加号(+)的处理方式
Oct 11 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
Dec 02 Javascript
JS中的phototype详解
Feb 04 Javascript
基于ES6 Array.of的用法(实例讲解)
Sep 05 Javascript
深入koa-bodyparser原理解析
Jan 16 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
May 16 Javascript
html中两种获取标签内的值的方法
Jun 16 jQuery
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桌面中心(二) 数据库写入
2007/03/11 PHP
php 数学运算验证码实现代码
2009/10/11 PHP
php给每个段落添加空格的方法
2015/03/20 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
Javascript 构造函数 实例分析
2008/11/26 Javascript
jQuery中add实现同时选择两个id对象
2010/10/22 Javascript
jQuery帮助之筛选查找 children([expr])
2011/01/31 Javascript
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
2012/05/14 Javascript
javascript通过className来获取元素的简单示例代码
2014/01/10 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
老生常谈combobox和combotree模糊查询
2017/04/17 Javascript
详解如何实现一个简单的 vuex
2018/02/10 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
vue弹窗组件使用方法
2018/04/28 Javascript
详解如何webpack使用DllPlugin
2018/09/30 Javascript
vue中监听返回键问题
2019/08/28 Javascript
Layui实现主窗口和Iframe层参数传递
2019/11/14 Javascript
vue新建项目并配置标准路由过程解析
2019/12/09 Javascript
javascript+Canvas实现画板功能
2020/06/23 Javascript
python根据京东商品url获取产品价格
2015/08/09 Python
儿童python练习实例
2018/05/27 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
python使用ctypes调用扩展模块的实例方法
2020/01/28 Python
python 基于selectors库实现文件上传与下载
2020/12/31 Python
params有什么用
2016/03/01 面试题
简历自我评价怎么写好呢?
2014/01/04 职场文书
道德模范先进事迹
2014/02/14 职场文书
会计岗位职责模板
2014/03/12 职场文书
《春天来了》教学反思
2014/04/07 职场文书
2014小学生国庆65周年演讲稿
2014/09/21 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
公安局班子个人对照检查材料思想汇报
2014/10/09 职场文书
2014年评职称工作总结
2014/11/20 职场文书
交通安全月活动总结
2015/05/08 职场文书
Python采集股票数据并制作可视化柱状图
2022/04/04 Python