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 html()等方法介绍
Nov 18 Javascript
获取客户端网卡MAC地址和IP地址实现JS代码
Mar 17 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
Apr 07 Javascript
把jquery 的dialog和ztree结合实现步骤
Aug 02 Javascript
Jquery 实现弹出层插件
Jan 28 Javascript
Extjs表单输入框异步校验的插件实现方法
Mar 20 Javascript
关于使用js算总价的问题
Jun 23 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
Aug 30 Javascript
Bootstrap标签页(Tab)插件切换echarts不显示问题的解决
Jul 13 Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
Dec 06 Javascript
微信小程序停止其他视频播放当前视频的实例代码
Dec 25 Javascript
原生js+css实现tab切换功能
Sep 17 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中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
计算一段日期内的周末天数的php代码(星期六,星期日总和)
2009/11/12 PHP
解析php中获取url与物理路径的总结
2013/06/21 PHP
php判断用户是否手机访问代码
2015/06/08 PHP
PHP+Ajax实现无刷新分页实例详解(附demo源码下载)
2016/04/07 PHP
PHP实现获取url地址中顶级域名的方法示例
2019/06/05 PHP
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
JS解析XML实例分析
2015/01/30 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
BootStrap实用代码片段之一
2016/03/22 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
JavaScript进阶(一)变量声明提升实例分析
2020/05/09 Javascript
vue 中的动态传参和query传参操作
2020/11/09 Javascript
详解Vite的新体验
2021/02/22 Javascript
[01:10]DOTA2次级职业联赛 - Fly战队宣传片
2014/12/01 DOTA
Linux下python制作名片示例
2018/07/20 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
Python基于opencv的简单图像轮廓形状识别(全网最简单最少代码)
2021/01/28 Python
Python爬虫分析微博热搜关键词的实现代码
2021/02/22 Python
python和opencv构建运动检测器的实现
2021/03/03 Python
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
艺术家策划的室内设计:Curious Egg
2019/03/06 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
Herschel Supply Co.美国:背包、手提袋及配件
2020/11/24 全球购物
屈臣氏泰国官网:Watsons TH
2021/02/23 全球购物
服务行业个人求职的自我评价
2013/12/12 职场文书
大学生暑期实践感言
2014/02/26 职场文书
离职证明标准格式
2014/09/15 职场文书
列车乘务员工作不细心检讨书
2014/10/07 职场文书
普通党员个人整改措施
2014/10/27 职场文书
街道社区活动报告
2015/02/05 职场文书
2016猴年春节慰问信
2015/11/30 职场文书
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js
Python用any()函数检查字符串中的字母以及如何使用all()函数
2022/04/14 Python
Golang 字符串的常见操作
2022/04/19 Golang