利用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 相关文章推荐
JavaScript对象、属性、事件手册集合方便查询
Jul 04 Javascript
javascript 中String.match()与RegExp.exec()的区别说明
Jan 10 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
Jun 24 Javascript
探讨JavaScript中声明全局变量三种方式的异同
Dec 03 Javascript
jQuery中parents()和parent()的区别分析
Oct 28 Javascript
javascript函数声明和函数表达式区别分析
Dec 02 Javascript
基于Angular.js实现的触摸滑动动画实例代码
Feb 19 Javascript
WebStorm ES6 语法支持设置&amp;babel使用及自动编译(详解)
Sep 08 Javascript
vue 过滤器filter实例详解
Mar 14 Javascript
JavaScript 复制对象与Object.assign方法无法实现深复制
Nov 02 Javascript
利用d3.js实现蜂巢图表带动画效果
Sep 03 Javascript
jquery实现异步文件上传ajaxfileupload.js
Oct 23 jQuery
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
日本收入最高的漫画家:海贼王作者版税年收入高达8.45亿元
2020/03/04 日漫
php中将一段数据存到一个txt文件中并显示其内容
2014/08/15 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
一个js写的日历(代码部分网摘)
2009/09/20 Javascript
js 对联广告、漂浮广告封装类(IE,FF,Opera,Safari,Chrome
2009/11/26 Javascript
JQUBar 基于JQUERY的柱状图插件
2010/11/23 Javascript
基于jquery的监控数据是否发生改变
2011/04/11 Javascript
javascript截取字符串(通过substring实现并支持中英文混合)
2013/06/24 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
jqGrid随窗口大小变化自适应大小的示例代码
2013/12/28 Javascript
JavaScript正则表达式之multiline属性的应用
2015/06/16 Javascript
JS自动倒计时30秒后按钮才可用(两种场景)
2015/08/31 Javascript
基于OL2实现百度地图ABCD marker的效果
2015/10/01 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
Node 升级到最新稳定版的方法分享
2018/05/17 Javascript
vue操作下拉选择器获取选择的数据的id方法
2018/08/24 Javascript
4个顶级开源JavaScript图表库
2018/09/29 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
细说webpack6 Babel的使用详解
2019/09/26 Javascript
jQuery擦除插件eraser使用方法详解
2020/01/11 jQuery
JS实现图片懒加载(lazyload)过程详解
2020/04/02 Javascript
Vue记住滚动条和实现下拉加载的完美方法
2020/07/31 Javascript
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
简单谈谈python中的lambda表达式
2018/01/19 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
CSS3 简写animation
2012/05/10 HTML / CSS
基于CSS3实现的漂亮Menu菜单效果代码
2015/09/10 HTML / CSS
KIKO MILANO英国官网:意大利知名化妆品和护肤品品牌
2017/09/25 全球购物
新学期国旗下演讲稿
2014/05/08 职场文书
青春无悔演讲稿
2014/05/08 职场文书
行政管理专业求职信
2014/07/06 职场文书
全国法院系统开展党的群众路线教育实践活动综述(全文)
2014/10/25 职场文书
2014年话务员工作总结
2014/11/19 职场文书
2014年学生管理工作总结
2014/12/20 职场文书