Vue2.0教你当前选中鼠标移入移除加样式,实现显示隐藏

效果如gif动态图所示:

1、通过v-for遍历数组

HTML代码:

1 <template>
2     <div class="nav">
3         <div class="nav-item" v-for="(item,index) in items" :key="index" @mouseenter="mouseEnter(index)" @mouseleave="mouseLeave" :class="{active:index==isActive}">
4             <span class="fl">{{index+1}}、</span>
5             <span>{{item.text}}</span>
6             <em @click="del">X</em>
7         </div>
8     </div>
9 </template>

2、通过鼠标移入移除、删除方法

JS代码:

 1 <script>
 2 export default {
 3   data(){
 4       return{
 5           isActive:false,
 6           items:[
 7               {
 8                   text:‘吃饭‘,
 9               },
10               {
11                   text:‘睡觉‘
12               },
13               {
14                   text:‘上网‘
15               },
16               {
17                   text:‘跑步‘
18               },
19               {
20                   text:‘爬山‘
21               }
22           ]
23       }
24   },
25   methods:{
26     //   鼠标移入
27       mouseEnter(index){
28         this.isActive = index;
29       },
30     //   鼠标移除
31       mouseLeave(){
32           this.isActive=null;
33       },
34     // 删除列表某一项
35     del(index){
36         this.items.splice(index,1);
37     }
38   }
39 }
40 </script>

3、CSS代码(这里采用Less):

 1 <style scoped lang="less">
 2 .nav{
 3     width: 200px;
 4     .nav-item{
 5         width: 100%;
 6         height: 40px;
 7         padding-left: 10px;
 8         line-height: 40px;
 9         cursor:pointer;
10         background-color: #f1f1f1;
11         color: #333;
12         &.active{
13             background: #0190fe;
14             color: #fff;  // 选中字体背景跟着改变
15         }
16         em{
17             font-style: normal;
18             float: right;
19             padding-right: 10px;
20             display: none;  //默认删除图标隐藏
21         }
22         &.active em{
23             display: block;   // 鼠标放上去删除图标显示
24         }
25     }
26 }
27 </style>

若有不明白请加群号:复制 695182980 ,也可扫码,希望能帮助到大家。

原文地址:https://www.cnblogs.com/CinderellaStory/p/8995303.html

时间: 2024-11-06 11:30:24

Vue2.0教你当前选中鼠标移入移除加样式,实现显示隐藏的相关文章

CSS3 - 鼠标移入移出时改变样式

1,使用伪类实现样式切换伪类是CSS2.1时出现的新特性,让许多原本需要JavaScript才能做出来的效果使用CSS就能实现.比如实现下面的鼠标悬停效果,只要为:hover伪类应用一组新样式即可.当访客鼠标移动到按钮上面时,浏览器会自动为按钮应用这新样式.12 <style>.slickButton {    color: white;    font-weight: bold;    padding: 10px;    border: solid 1px black;    backgro

【2017-3-30】DOM获取元素 点击、鼠标移入、移出事件 样式控制

1.获取标记对象 + document.getElementById('id'):                        - 获取一个对象 + document.getElementsByClassName('class');      - 获取的是一个数组 + document.getElementsByTagName('标记');          - 获取的也是一个数组 + document.getElementsByName('name');             - 获取的也

css实现 鼠标移上放大效果 或 显示隐藏内容 简单原型

适当调整即可变为图片放大镜效果,或者鼠标移上去显示隐藏内容(ie6对hover支持不够完善,推荐在火狐或谷歌中观看). 效果如图: css: .demo {        width: 318px;        margin: 100px auto 0 auto;    } .demo:after {        content: "";        display: block;        height: 0;        clear: both;    } .demo

鼠标移入移除切换图片路径

<a href="#"><img src="https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/logo-zhidao.gif" border="0" onMouseOver="this.src='http://s1.bdstatic.com/r/www/cache/mid/static/xueshu/img/logo_4b1971d.gif'" onMouseO

jquery实现鼠标移入移除背景图片切换

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="

匿名函数和鼠标移入移除事件

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>改变边框</title> <style> .def { border: 1px solid #ccc; margin-right: 120px; } .hover { border: 1px solid red; margin-right: 12

vue2.0中实现单选,全选,购物车加减计算等效果

<!doctype html><html class="no-js"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="description" content=""> &l

vue2.0 通过v-html指令编辑的富文本无法修改样式的原因

在最近的项目中遇到的问题:v-html编辑的富文本,无法在样式表中修改样式: <template> <div class="descBox" v-html='desc'></div> </template> <script> export default{ data(){ return { desc: "<p>I believe I can fly</p>" } } } </s

scrollTop 鼠标往下移动到一定位置显示隐藏

<div class="mouse_scroll">     <img src="./mouse.png"></div> <script type="text/javascript"> $(function(){ $(window).scroll(function(){ if($(window).scrollTop()>100){ $('.mouse_scroll').show(); }els