最近自己做的项目中设计师要求分类栏中鼠标悬停更换图片,大致实现出来的效果就是这样:
这个在jQuery中是个很简单的事,但是在vue中我还是第一次实现。
首先将所有的选中后图片都覆盖到没选中图片上
html代码如下
<ul> <li> <a href=""> <img src="../../../img/goods/study.png" alt="学习"> <img class="hide_tab" src="../../../img/goods/study_1.png" alt="学习"> </a> </li> <li> <a href=""> <img src="../../../img/goods/life.png" alt="生活"> <img class="hide_tab" src="../../../img/goods/life_1.png" alt="生活"> </a> </li> <li> <a href="" > <img src="../../../img/goods/sport.png" alt="运动"> <img class="hide_tab" src="../../../img/goods/sport_1.png" alt="运动"> </a> </li> <li> <a href=""> <img src="../../../img/goods/clothes.png" alt="服饰"> <img class="hide_tab" src="../../../img/goods/clothes_1.png" alt="服饰"> </a> </li> <li> <a href="" > <img src="../../../img/goods/hat.png" alt="鞋帽"> <imgclass="hide_tab" src="../../../img/goods/hat_1.png" alt="鞋帽"> </a> </li> <li> <a href="" > <img src="../../../img/goods/food.png" alt="食品"> <img class="hide_tab" src="../../../img/goods/food_1.png" alt="食品"> </a> </li> <li> <a href=""> <img src="../../../img/goods/other.png" alt="其他"> <img class="hide_tab" src="../../../img/goods/other_1.png" alt="其他"> </a> </li> </ul>
css代码如下
.right {
float: left;
ul {
margin-left: 1px;
li {
display: inline-block;
margin-left: 12px;
width: 100px;
height: 100px;
a{
position: relative;
display: inline-block;
width: 100px;
height: 100px;
.hide_tab{
position: absolute;
bottom: 0;
}
}
}
}
}
其实就是很简单的通过position:absolute进行了布局,现在选中样式的图片已经全部覆盖到了没有选中样式图片之上了。
接下来就需要一个变量控制他们的显隐。这个变量应该是一个和每个分类一一对应的,那这个变量就不应该是一个简单的布尔值,而是一个数字,和每个分类图片对应。
我定义这个变量叫做active,在data中声明
data(){
return{
active: 0
}
}
再定义一个方法控制active变量的变化
showActive(index) {
this.active = index;
}
方法中的index参数就是鼠标悬浮时传入的值
修改html代码如下
<ul> <li> <a href="" @mouseenter="showActive(1)" @mouseleave="showActive(0)"> <img src="../../../img/goods/study.png" alt="学习"> <img v-show="active === 1" class="hide_tab" src="../../../img/goods/study_1.png" alt="学习"> </a> </li> <li> <a href="" @mouseenter="showActive(2)" @mouseleave="showActive(0)"> <img src="../../../img/goods/life.png" alt="生活"> <img v-show="active === 2" class="hide_tab" src="../../../img/goods/life_1.png" alt="生活"> </a> </li> <li> <a href="" @mouseenter="showActive(3)" @mouseleave="showActive(0)"> <img src="../../../img/goods/sport.png" alt="运动"> <img v-show="active === 3" class="hide_tab" src="../../../img/goods/sport_1.png" alt="运动"> </a> </li> <li> <a href="" @mouseenter="showActive(4)" @mouseleave="showActive(0)"> <img src="../../../img/goods/clothes.png" alt="服饰"> <img v-show="active === 4" class="hide_tab" src="../../../img/goods/clothes_1.png" alt="服饰"> </a> </li> <li> <a href="" @mouseenter="showActive(5)" @mouseleave="showActive(0)"> <img src="../../../img/goods/hat.png" alt="鞋帽"> <img v-show="active === 5" class="hide_tab" src="../../../img/goods/hat_1.png" alt="鞋帽"> </a> </li> <li> <a href="" @mouseenter="showActive(6)" @mouseleave="showActive(0)"> <img src="../../../img/goods/food.png" alt="食品"> <img v-show="active === 6" class="hide_tab" src="../../../img/goods/food_1.png" alt="食品"> </a> </li> <li> <a href="" @mouseenter="showActive(7)" @mouseleave="showActive(0)"> <img src="../../../img/goods/other.png" alt="其他"> <img v-show="active === 7" class="hide_tab" src="../../../img/goods/other_1.png" alt="其他"> </a> </li> </ul>
只有在当前index和active相等时,才会显示已选中分类的图片。
而鼠标离开时,传入一个没有与之对应的0,这样就没有显示了。
本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。
关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Vue.js鼠标悬浮更换图片
# Vue.js鼠标悬浮
# Vue.js更换图片
# 鼠标悬浮显示二级菜单效果的jquery实现
# 鼠标悬浮停留三秒后自动显示大图js代码
# vue实现鼠标经过显示悬浮框效果
# Vue实现鼠标悬浮切换图片src
# Vue实现鼠标经过文字显示悬浮框效果的示例代码
# 鼠标悬浮在树组件节点上展示当前节点名称的三种实现方式
# 鼠标
# 很简单
# 是一个
# 他们的
# 是个
# 上了
# 就不
# 才会
# 已被
# 请大家
# 欢迎大家
# 与之
# 大家多多
# 进行了
# 栏中
# 应该是
# 我还是
# 但是在
# 布尔值
# href
相关文章:
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
如何在万网自助建站平台快速创建网站?
,柠檬视频怎样兑换vip?
C#如何在一个XML文件中查找并替换文本内容
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
建站之星伪静态规则如何正确配置?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
如何通过商城自助建站源码实现零基础高效建站?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
Python lxml的etree和ElementTree有什么区别
建站之星IIS配置教程:代码生成技巧与站点搭建指南
网站制作公司,橙子建站是合法的吗?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
如何在腾讯云服务器快速搭建个人网站?
想学网站制作怎么学,建立一个网站要花费多少?
建站之星后台管理如何实现高效配置?
建站之星2.7模板快速切换与批量管理功能操作指南
如何选购建站域名与空间?自助平台全解析
个人摄影网站制作流程,摄影爱好者都去什么网站?
香港服务器选型指南:免备案配置与高效建站方案解析
如何快速搭建高效可靠的建站解决方案?
建站主机与虚拟主机有何区别?如何选择最优方案?
早安海报制作网站推荐大全,企业早安海报怎么每天更换?
子杰智能建站系统|零代码开发与AI生成SEO优化指南
如何选择域名并搭建高效网站?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
济南网站制作的价格,历城一职专官方网站?
如何在IIS中配置站点IP、端口及主机头?
广州建站公司哪家好?十大优质服务商推荐
linux top下的 minerd 木马清除方法
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
如何用AWS免费套餐快速搭建高效网站?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
七夕网站制作视频,七夕大促活动怎么报名?
如何快速生成凡客建站的专业级图册?
建站DNS解析失败?如何正确配置域名服务器?
独立制作一个网站多少钱,建立网站需要花多少钱?
建站之星如何快速生成多端适配网站?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
如何做网站制作流程,*游戏网站怎么搭建?
广州营销型建站服务商推荐:技术优势与SEO优化解析
威客平台建站流程解析:高效搭建教程与设计优化方案
微信h5制作网站有哪些,免费微信H5页面制作工具?
宁波自助建站系统如何快速打造专业企业网站?
如何通过可视化优化提升建站效果?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
建站之星如何助力网站排名飙升?揭秘高效技巧
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
制作旅游网站html,怎样注册旅游网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。