利用vue.js实现被选中状态的改变方法


Posted in Javascript onFebruary 08, 2018

在使用原型实现使不选中状态改变之后,接触到vue,就想着能不能使用vue再把功能实现一边,在上篇中的页面并没有动态实现页面,所有的数据也都是直接写在html中。而使用vue之后,已经能够实现页面根据数据的多少动态生成。而且代码量也大幅度减少。

html部分的代码:

<div data-role="page " class="page "> 
 <div class="center " id="app"> 
 <div class="group "> 
 <ul> 
 <li v-for = "todo in todos "> 
  <div class="groupheader "> 
  <div class="Gheadertext ">{{todo.groupheader}}</div> 
  </div> 
  <div class = "groupbody "> 
  <ul class="list "> 
  <li v-for="cell in todo.groupbody" v-on:click="exchange($event)" class="groupcell"> 
  <div class="celltext"> 
   {{ cell.text }} 
  </div> 
  <img class="selectimg" src="img/select.png "> 
  </li> 
  </ul> 
  </div> 
  </li> 
 </ul> 
 </div> 
 </div> 
</div>

数据代码:

var datas = { 
 todos :[ 
 { 
 groupheader : 'MB3101', 
 groupbody:[ 
  { text: '调整不当'}, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 }, 
 { 
 groupheader : 'MB3102', 
 groupbody:[ 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 }, 
 { 
 groupheader : 'MB3103', 
 groupbody:[ 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 } 
 ] 
}

js部分的代码:

new Vue({ 
 el: '#app', 
 data:datas, 
 methods:{ 
 exchange:function(event){ 
  //获取被点击的元素对象 
  var a = event.target; 
  //获取被点击元素中的子元素<img> 
  var cellimg = a.getElementsByTagName("img")[0]; 
  if(a.className == "groupcell") { 
  a.className = "selectcell"; 
  cellimg.style.display = "block"; 
 } 
 else if(a.className == "selectcell") { 
  a.className = "groupcell"; 
  cellimg.style.display = "none"; 
 } 
 } 
 } 
})

效果如图所示:

利用vue.js实现被选中状态的改变方法

以上这篇利用vue.js实现被选中状态的改变方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery1.4+ Ajax IE8 内存泄漏问题
Oct 15 Javascript
js中格式化日期时间型数据函数代码
Nov 08 Javascript
通过javascript把图片转化为字符画
Oct 24 Javascript
javascript函数中参数传递问题示例探讨
Jul 31 Javascript
jQuery控制Div拖拽效果完整实例分析
Apr 15 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
Apr 28 Javascript
javascript中undefined与null的区别
Aug 16 Javascript
jQuery生成假加载动画效果
Dec 01 Javascript
详解js中Number()、parseInt()和parseFloat()的区别
Dec 20 Javascript
详解webpack的配置文件entry与output
Aug 21 Javascript
详解动画插件wow.js的使用方法
Sep 13 Javascript
vue工程全局设置ajax的等待动效的方法
Feb 22 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
Feb 08 #Javascript
vue绑定的点击事件阻止冒泡的实例
Feb 08 #Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
Feb 08 #Javascript
vue中改变选中当前项的显示隐藏或者状态的实现方法
Feb 08 #Javascript
Ionic学习日记实现验证码倒计时
Feb 08 #Javascript
vue父组件点击触发子组件事件的实例讲解
Feb 08 #Javascript
vue中实现在外部调用methods的方法(推荐)
Feb 08 #Javascript
You might like
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
JavaScript 拾漏补遗
2009/12/27 Javascript
jquery+json 通用三级联动下拉列表
2010/04/19 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
jQuery控制TR显示隐藏的几种方法
2014/06/18 Javascript
Javascript的&amp;&amp;和||的另类用法
2014/07/23 Javascript
js变量、作用域及内存详解
2014/09/23 Javascript
javascript实现简单的进度条
2015/07/02 Javascript
Javascript获取统一管理的提示语(message)
2016/02/03 Javascript
Json解析的方法小结
2016/06/22 Javascript
jquery 判断selection range 是否在容器中的简单实例
2016/08/02 Javascript
JS中split()用法(将字符串按指定符号分割成数组)
2016/10/24 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
微信小程序 首页制作简单实例
2017/04/07 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
微信公众号H5支付接口调用方法
2019/01/10 Javascript
使用uni-app开发微信小程序的实现
2019/12/13 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
[40:55]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#4Newbee VS Fnatic
2016/03/03 DOTA
PHP webshell检查工具 python实现代码
2009/09/15 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
python仿evething的文件搜索器实例代码
2019/05/13 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
2020/02/03 Python
Python日志syslog使用原理详解
2020/02/18 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
护士自荐信怎么写
2013/10/18 职场文书
全民健身日活动方案
2014/01/29 职场文书
采购类个人求职的自我评价
2014/02/18 职场文书
酒店节能降耗方案
2014/05/08 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
护理医院见习报告
2014/11/03 职场文书
golang 比较浮点数的大小方式
2021/05/02 Golang
教你修复 Win11应用商店加载空白问题
2021/12/06 数码科技