实际项目中,我们会遇到很多类似的需求,一个列表,需要点击其中一条高亮显示。熟悉JQuery的同学说这个太简单了。可以给这个选中的element设置一个active的class。配合Css样式,让active有选中高亮效果。但是谁说一定要用到jQuery呢。

  最近在做的项目中,我尝试脱离JQuery,绕过JQuery,我所接触的大部分项目中好像不使用JQuery无法进行开发一样。它确实给开发者提供了太多便利。以至于大部分web网站都依赖它运行着。据w3Techs统计,JQuery的市场份额高达94.9%,是时候脱离JQuery的束缚了。使用Vue.js更简洁,快速地实现。

  选中效果实现的核心实现逻辑是拷贝一份当前状态作为快照。比对列表的快照和当前的唯一索引,如果相同则视为选中。

Demo


使用Vue.js实现


javascript

new Vue({
el: "#app",
data: {
gameNames: ['魔兽世界', '暗黑破坏神Ⅲ', '星际争霸Ⅱ', '炉石传说', '风暴英雄',
'守望先锋'
],
activeName: ''
},
methods: {
selected: function(gameName) {
this.activeName = gameName
}
}
})

html

<div id="app">
<div class="collection">
<a href="#!" class="collection-item"
v-for="gameName in gameNames"
@click="selected(gameName)"
:class="{active: activeName == gameName}">{{gameName}}</a>
</div>
</div>

It's done. 非常简洁的代码就实现了选中高亮。View on jsfiddle

 
参考:https://segmentfault.com/a/1190000005600481

85、使用Vue.js实现列表选中效果的更多相关文章

  1. 使用Vue.js实现列表选中效果

     实际项目中,我们会遇到很多类似的需求,一个列表,需要点击其中一条高亮显示.熟悉JQuery的同学说这个太简单了.可以给这个选中的element设置一个active的class.配合Css样式,让ac ...

  2. Vue.js的列表数据的同步更新方法

    这次给大家带来Vue.js的列表数据的同步更新方法,Vue.js列表数据同步更新方法的注意事项有哪些,下面就是实战案例,一起来看一下. 数组的 push(),pop(),shift(),unshift ...

  3. Vue.js实现tab切换效果

    利用Vue实现简易tab切换效果 1.1 在我们平时浏览网站的时候,经常看到的特效有图片轮播.导航子菜单的隐藏.tab标签的切换等等.这段时间学习了vue后,开始要写出一些简单的特效. 1.2 实现思 ...

  4. 关于vue.js中列表渲染练习

    html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8 ...

  5. Vuejs实现列表选中效果

    //html <div id="app"> <ul><div>选择你最喜欢的爱好:</div> <li class=" ...

  6. Vue.js根据列表某列值更新filter

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  7. vue.js对列表进行编辑未保存随时变更

    1.不要建立在同一vm对象下 2.使用深拷贝$.extend(true, vm.model, obj); 3.开新标签页

  8. vue.js循环for(列表渲染)详解

    vue.js循环for(列表渲染)详解 一.总结 一句话总结: v-for <ul id="example-1"> <li v-for="item in ...

  9. Vue.js hello world

    <!DOCTYPE HTML> <html> <head> <title>vue.js hello world</title> <sc ...

  10. 公司内部技术分享之Vue.js和前端工程化

    今天主要的核心话题是Vue.js和前端工程化.我将结合我这两年多的工作学习经历来谈谈这个,主要侧重点是前端工程化,Vue.js侧重点相对前端工程化,比重不是特别大. Vue.js Vue.js和Rea ...

随机推荐

  1. linux执行sh脚本报错:$’\r’: 未找到命令的解决

    原因: 命令直接从windows 复制过来导致的 解决:我是unbutu系统 安装dos2unix apt-get install dos2unix 执行dos2unix命令转换文件格式 dos2un ...

  2. RBAC访问控制

    案例:为指定用户授权访问不同命名空间权限,例如公司新入职一个小弟,希望让他先熟悉K8s集群,为了 安全性,先不能给他太大权限,因此先给他授权访问default命名空间od,读取权限. 实施大致步骤: ...

  3. vs2019中添加rdlc的报表设计器

    在Visual studio 2019中,不会默认安装rdlc的报表设计器,所以需要自行添加. 1. 打开VS2019, 找到扩展-->管理扩展 2. 在扩展管理中,点击"联机&quo ...

  4. Python语言基础实验(第四周)

    Python语言基础实验(第四周) 一.实验目的 1.了解并掌握python中序列及序列的常用操作. 2.根据实际需要运用合适的序列类型来完成实验. 二.实验环境 软件版本:Python 3.10 6 ...

  5. mysql 备份定时任务

    #!/bin/bash rq=`date +%Y-%m-%d-%H` #日期 #数据库信息 host=127.0.0.1 user=root password=xxx dbname=script #放 ...

  6. beego框架中的注解路由不生效的问题

    在测试中发现 使用注解路由的话 项目需要在gopath路径下的src下才可以 并且配置文件的 runmode = dev 然后执行bee run 在路由文件夹里才会生成commentRouter文件 ...

  7. react知识点-01

    1. 使用 globalContext 进行生产消费.非父子间通信

  8. 在SublimeText3中想使用快捷键调出插件ColorPicker不起作用办法解决

    在SublimeText3中快速打开插件ColorPicker的快捷健是Ctrl+Shift+C,但是我试了却不管用,后来发现是跟插件ConvertToUTF8插件中的快捷键冲突导致,知道原因就好办了 ...

  9. cookie是什么?有什么用?

    cookie是什么? 储存在用户本地终端上的数据,是网站为了识别用户和跟踪回话而存储在用户本地终端中的文本数据 cookie就是保存在客户端的纯文本文件,比如txt文件,所谓的客户端就是我们自己的本地 ...

  10. Kubernetes--Pod存活性探测(设置exec探针)

    有不少应用程序长时间持续运行后会逐渐转为不可用状态,并且仅能通过重启操作恢复,Kubernetes的容器存货性探测机制可发现诸如此类的问题,并根据探测结果结合重启策略触发后续的行为.存活性探测是隶属于 ...