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 命名规则 变量命名规则
Feb 25 Javascript
HTML上传控件取消选择
Mar 06 Javascript
javascript实现的弹出层背景置灰-模拟(easyui dialog)
Dec 27 Javascript
JS中表单的使用小结
Jan 11 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
Dec 01 Javascript
利用vue.js插入dom节点的方法
Mar 15 Javascript
用 js 的 selection range 操作选择区域内容和图片
Apr 18 Javascript
vue的Virtual Dom实现snabbdom解密
May 03 Javascript
vue项目中的webpack-dev-sever配置方法
Dec 14 Javascript
微信小程序静默登录的实现代码
Jan 08 Javascript
微信小程序订阅消息(java后端实现)开发
Jun 01 Javascript
在Vue中使用antv的示例代码
Jun 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
无线电广播的开始
2002/01/30 无线电
php.ini中的php-5.2.0配置指令详解
2008/03/27 PHP
php中用数组的方法设置cookies
2011/04/21 PHP
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
mac下多个php版本快速切换的方法
2016/10/09 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
js常用排序实现代码
2010/12/28 Javascript
从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
2011/02/23 Javascript
Jquery刷新页面背景图片随机变换的实现方法
2013/03/15 Javascript
JS获取并操作iframe中元素的方法
2013/03/21 Javascript
js计算两个时间之间天数差的实例代码
2013/11/19 Javascript
关闭浏览器窗口弹出提示框并且可以控制其失效
2014/04/15 Javascript
Javascript中call与apply的学习笔记
2014/09/22 Javascript
使用 JavaScript 进行函数式编程 (一) 翻译
2015/10/02 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
2016/12/14 Javascript
jQuery 全选 全不选 事件绑定的实现代码
2017/01/23 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
聊聊JavaScript如何实现继承及特点
2017/04/07 Javascript
利用types增强vscode中js代码提示功能详解
2017/07/07 Javascript
BootStrap数据表格实例代码
2017/09/13 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
微信小程序开发实现的IP地址查询功能示例
2019/03/28 Javascript
vue 通过绑定事件获取当前行的id操作
2020/07/27 Javascript
[15:39]教你分分钟做大人:龙骑士
2014/10/30 DOTA
[00:33]2018DOTA2亚洲邀请赛TNC出场
2018/04/04 DOTA
Python的subprocess模块总结
2014/11/07 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
python3.7 openpyxl 在excel单元格中写入数据实例
2020/09/01 Python
用HTML5实现手机摇一摇的功能的教程
2012/10/30 HTML / CSS
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
TIME时代杂志台湾总代理:台时亚洲
2018/10/22 全球购物
员工生日会策划方案
2014/06/14 职场文书
2014年群众路线党员自我评议
2014/09/24 职场文书
工程质检员岗位职责
2015/04/08 职场文书
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫