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 相关文章推荐
JS 自动安装exe程序
Nov 30 Javascript
javascript+iframe 实现无刷新载入整页的代码
Mar 17 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
Apr 11 Javascript
js判断选择时间不能小于当前时间的示例代码
Sep 24 Javascript
node.js中的console.warn方法使用说明
Dec 09 Javascript
AngularJs bootstrap搭载前台框架——基础页面
Sep 01 Javascript
AngularJs Dependency Injection(DI,依赖注入)
Sep 02 Javascript
JS简单实现表格排序功能示例
Dec 20 Javascript
原生js实现图片放大缩小计时器效果
Jan 20 Javascript
Vue.js实现立体计算器
Feb 22 Javascript
使用 Opentype.js 生成字体子集的实例代码详解
May 25 Javascript
详解React路由传参方法汇总记录
Nov 29 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
星际争霸, 教主第一视角, ZvT经典龙蛇演义
2020/03/02 星际争霸
最省空间的计数器
2006/10/09 PHP
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
关于php中的json_encode()和json_decode()函数的一些说明
2016/11/20 PHP
PHP实现登陆表单提交CSRF及验证码
2017/01/24 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
js获取对象、数组的实际长度,元素实际个数的实现代码
2016/06/08 Javascript
jquery购物车结算功能实现方法
2020/10/29 Javascript
jquery 获取索引值在一定范围的列表方法
2018/01/25 jQuery
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
angular 用Observable实现异步调用的方法
2018/12/27 Javascript
使用Three.js实现太阳系八大行星的自转公转示例代码
2019/04/09 Javascript
JS实现手写 forEach算法示例
2020/04/29 Javascript
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
Python 列表排序方法reverse、sort、sorted详解
2016/01/22 Python
浅谈python中的变量默认是什么类型
2016/09/11 Python
Python做文本按行去重的实现方法
2016/10/19 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
python的多重继承的理解
2017/08/06 Python
Python中使用多进程来实现并行处理的方法小结
2017/08/09 Python
Python引用类型和值类型的区别与使用解析
2017/10/17 Python
深入浅析Python 中 is 语法带来的误解
2019/05/07 Python
python如何通过twisted搭建socket服务
2020/02/03 Python
Flask-SocketIO服务端安装及使用代码示例
2020/11/26 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
2020/12/09 Python
Expedia印度尼西亚站:预订酒店、廉价航班和度假套餐
2018/01/31 全球购物
法国在线购买汽车轮胎网站:123pneus.fr
2019/02/25 全球购物
2014年教研活动总结范文
2014/04/26 职场文书
解放思想大讨论活动总结
2015/05/09 职场文书
2019同学聚会主持词
2019/05/06 职场文书
开网店计划分析
2019/07/30 职场文书
Python实现查询剪贴板自动匹配信息的思路详解
2021/07/09 Python
Java中try catch处理异常示例
2021/12/06 Java/Android