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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值