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 foreach使用示例
Sep 12 Javascript
优化javascript的执行效率一些方法总结
Dec 25 Javascript
javascript设计简单的秒表计时器
Sep 05 Javascript
ashx文件获取$.ajax()方法发送的数据
May 26 Javascript
jQuery给表格添加分页效果
Mar 02 Javascript
整理关于Bootstrap过渡动画的慕课笔记
Mar 29 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
Apr 21 jQuery
解决vuejs 使用value in list 循环遍历数组出现警告的问题
Sep 26 Javascript
富文本编辑器vue2-editor实现全屏功能
May 26 Javascript
浅析VUE防抖与节流
Nov 24 Vue.js
JS模拟实现京东快递单号查询
Nov 30 Javascript
vue实现图片裁剪后上传
Dec 16 Vue.js
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 array 的加法操作代码
2010/07/24 PHP
md5 16位二进制与32位字符串相互转换示例
2013/12/30 PHP
PHP动态页生成静态页的3种常用方法
2014/11/13 PHP
php中的异常和错误浅析
2017/05/03 PHP
PHP缓存工具XCache安装与使用方法详解
2018/04/09 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍
2013/01/24 Javascript
使用javascipt---实现二分查找法
2013/04/10 Javascript
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
2014/01/09 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
JS实现很酷的水波文字特效实例
2015/02/26 Javascript
jQuery实现页面顶部显示的进度条效果完整实例
2015/12/09 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
bootstrap datetimepicker 日期插件在火狐下出现一条报错信息的原因分析及解决办法
2017/03/08 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
浅谈layer的Icon样式以及一些常用的layer窗口使用方法
2019/09/11 Javascript
[00:12]DAC2018 Miracle-站上中单舞台,他能否再写奇迹?
2018/04/06 DOTA
Python开发WebService系列教程之REST,web.py,eurasia,Django
2014/06/30 Python
django之常用命令详解
2016/06/30 Python
python验证码识别的实例详解
2016/09/09 Python
使用Python的Dataframe取两列时间值相差一年的所有行方法
2018/07/10 Python
Python 经典面试题 21 道【不可错过】
2018/09/21 Python
python模拟预测一下新型冠状病毒肺炎的数据
2020/02/01 Python
python有序查找算法 二分法实例解析
2020/02/18 Python
使用python3 实现插入数据到mysql
2020/03/02 Python
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
营销人才自我鉴定范文
2013/12/25 职场文书
安全大检查实施方案
2014/02/22 职场文书
信息管理应届生求职信
2014/03/07 职场文书
2014爱耳日宣传教育活动总结
2014/03/09 职场文书
个人委托书范本
2014/04/02 职场文书
大学三年计划书范文
2014/04/30 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
爱护公物标语
2014/06/24 职场文书
java调用Restful接口的三种方法
2021/08/23 Java/Android