位置: IT常识 - 正文

Vue实现鼠标悬浮隐藏与显示图片效果 @mouseenter 和 @mouseleave事件(vue实现鼠标悬浮 显示全部内容)

编辑:rootadmin
Vue实现鼠标悬浮隐藏与显示图片效果 @mouseenter 和 @mouseleave事件 前言

推荐整理分享Vue实现鼠标悬浮隐藏与显示图片效果 @mouseenter 和 @mouseleave事件(vue实现鼠标悬浮 显示全部内容),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue实现鼠标悬浮 显示全部内容,vue鼠标悬浮切换图片,vue鼠标悬浮改变icon图标颜色,vue鼠标悬浮显示信息,vue鼠标悬浮文字上显示图片,vue鼠标悬浮切换图片,vue鼠标悬浮文字上显示图片,vue鼠标悬浮切换图片,内容如对您有帮助,希望把文章链接给更多的朋友!

前端vue 有个功能是鼠标移动到指定item上显示出来一个编辑和删除的图标 鼠标悬停在列表那么需要有悬浮显示的列表编辑和删除icon 文字不好描述,因为是web端录屏也比较麻烦 这里用截图说明

图片说明

功能实现

之前没做过这种效果,问了一下我的组长-豪哥 他告诉我很简单,利用vue的@mouseenter 和 @mouseleave事件就可以完美解决 本着这个思路,我去寻求答案,找了很多有关知识,自己也慢慢摸索 完成了该效果

下面说下实现 附代码

因为是在列表中完成的某个item的图标隐藏与显示 这个时候我们需要合index绑定 并且和改条目的id绑定(用来互斥)

这里需要注意一点Vue实现鼠标悬浮隐藏与显示图片效果 @mouseenter 和 @mouseleave事件(vue实现鼠标悬浮 显示全部内容)

@mouseenter 和 @mouseleave 方法必须放到父类的div中 才能起效果

我们需要 在js中把id绑定 把index设置值,默认为false 既不显示 下面js代码中做了id绑定和给数组的标记赋值的关系

/** *左边图表控制隐藏与显示 */const leftIcon = reactive({ inputAry: [] as boolean[]})const leftIconId = ref()const mouseenter = (index: number, item: SymptomList) => { leftIcon.inputAry[index] = true leftIconId.value = item.id console.log('mouseenter')}const mouseleave = (index: number, item: SymptomList) => { leftIcon.inputAry[index] = false leftIconId.value = item.id; console.log('mouseleave')}

我们在html中把@mouseenter 和 @mouseleave事件添加 然后再指定的div标签内 做隐藏与显示的判断 还是根据id和当前点击的标记位

<div v-for="(item, index) in symptomList" class="item"> <div class="left"> <!-- @mouseenter="mouseenter(index,item)" 在这里绑定index和item数据类(这里有我们要的数据id)--> <div class="left-div" @mouseenter="mouseenter(index,item)" @mouseleave="mouseleave(index,item)"> <div v-if="editShow.inputAry[index] == true && item.id == diseaseId "> <a-input class="input" v-model:value="inputContent" autofocus="autofocus" :max-length="10" @change="changeInput()" /> <a-button class="commit" @click="handleInputCommit(item,index)"> <template #icon> <check-outlined style="color: #ffffff" /> </template> </a-button> <a-button class="cancel" @click="handleInputCancel(index)"> <template #icon> <close-outlined /> </template> </a-button> </div> <div v-else style="display: flex;"> <div>{{ item.name }}</div> <div class="right-icon" <!-- 这里是item尾部的2个图标 编辑和删除图标 我们做了2个判断 第一是==true时,我们才把图标显示出来 第二:将当前点击的id记录 --> v-if="leftIcon.inputAry[index] == true && item.id == leftIconId"> <a-button style="color:#676E7C; width: 13.7px ; height: 13.7px;" @click="handleClickEdit(item,index)" type="link"> <template #icon> <edit-outlined /> </template> </a-button> <a-button style="margin-left: 5px; color:#676E7C; width: 13.7px ; height:13.7px;" @click="handleClickDel(item,index)" type="link"> <template #icon> <delete-outlined /> </template> </a-button> </div> </div> </div> </div>mouseover 和 mouseenter 的区别

mouseover:当鼠标移入元素或其子元素都会触发事件,有一个重复触发,事件叠加过程。对应的移除事件是 mouseout

mouseenter:当鼠标移入元素本身(不包含元素的子元素)会触发事件,事件不会叠加。对应的移除事件是 mouseleave

hover 事件调用顺序:

mouseover -> mouseenter -> mousemove(hover进去之后移动会触发) -> mouseout -> mouseleave

用div来演示所有事件方法

<div <!-- 1、进入元素 事件会叠加 --> @mouseover="mouseover" <!-- 2、进入元素 事件不叠加 --> @mouseenter="mouseenter" <!-- 3、移动 --> @mousemove="mousemove" <!-- 4、离开元素 事件会叠加--> @mouseout="mouseout" <!-- 5、离开元素 事件不叠加 --> @mouseleave="mouseleave" <!-- 6、鼠标在元素上 按下 --> @mousedown="mousedown" <!-- 7、鼠标在元素上 抬起 --> @mouseup="mouseup" > </div>总结

学习之路 永无止步 记录当下,保持一颗向上的心态~!

本文链接地址:https://www.jiuchutong.com/zhishi/289753.html 转载请保留说明!

上一篇:Calanques de Piana岩层上的一个心形洞,法国科西嘉岛 (© joningall/Getty Images)

下一篇:阳光照耀下的火山岩山脊,冰岛埃亚菲亚德拉冰盖 (© Erlend Haarberg/Minden Pictures)(阳光照耀下的人)

  • 增值税的附加税比例
  • 广播影视服务税率2023
  • 培训学校可以不可以用燃气取暖炉
  • 酒类许可证过期了去哪里换证
  • 不动产官网查询
  • 监理行业增值税税率多少
  • 普票开错了几个月可以重新开
  • 固定资产可以不设置残值吗
  • 减免税控盘增值税纳税申报
  • 当年实现的利润属于资产吗
  • 土地转让契税税率2020税率表
  • 公司内帐和外账的区别
  • 银行卡撤销账户
  • 半成品转成品会计分录
  • 已核销的贷款收回计入什么科目
  • 企业减免6%的税的营业范围有哪些?
  • 住宅租给公司需要注意什么
  • 火腿属于免税产品吗
  • 金税盘提示离线开票时间超限深圳
  • 发票丢失联次
  • 小规模纳税人代账多少钱一个月
  • 没有产权的房子可以公证吗
  • 财务报表年报和季报必须一样吗
  • 销售净利率怎么求
  • 个税专项扣除有几项
  • 私人打款到对公账户可以吗
  • 未缴少缴税款追征期
  • linux怎么安装程序
  • mac隔空投送文件位置
  • 坏账准备年末余额怎么计算
  • 苹果Mac电脑怎么锁屏
  • 金税盘可以抵扣进项税吗
  • mac怎么彻底删除一个软件
  • Linux /bin, /sbin, /usr/bin, /usr/sbin 区别
  • linux virt-manager
  • 房屋装修费如何入账
  • PHP:mcrypt_cfb()的用法_Mcrypt函数
  • CodeIgniter针对数据库的连接、配置及使用方法
  • php异步请求方式
  • node 卸载
  • php 5
  • bootstrap-
  • 业务招待费可以开专票抵扣吗
  • 房地产企业的开发成本和开发费用有什么区
  • 织梦官方网站
  • sqlserver还原数据库一直显示正在执行0%
  • 企业投资一个小时多少钱
  • 被投资公司注销把钱转到投资公司怎么做帐
  • 存货是指企业在生产经营过程中为销售或耗用
  • 固定资产更新改造被替换的旧部件残值收入
  • 成本暂估跨年度怎么算
  • 私车公用涉及的税种有哪些
  • 转出未交增值税和未交增值税区别
  • 股东之间转让股权有优先购买权吗
  • 应付职工薪酬账户贷方登记的是
  • sql server错误和使用情况报告
  • centos6.9安装教程详细
  • xp系统提升cpu最高性能
  • freebsd怎么样
  • win10链接手机怎么用
  • 虚拟机centos7无法启动
  • win10电池图标不动
  • win10如何移动应用程序
  • win8 控制面板
  • android拍照
  • 使用shell命令
  • css expression 隔行换色
  • 批处理修改文件名称
  • jquery获取值的几种方法
  • 简单的智能家居
  • jQuery validate+artdialog+jquery form实现弹出表单思路详解
  • js new()
  • python遍历文件目录
  • mvc使用
  • 特岗教师服务期满证书
  • 四川省地方税务局2017年1号公告
  • 企业不做审计会有什么后果?
  • 按期申报和按次申报的区别
  • 税控盘清卡的步骤
  • 13%增值税发票怎么抵扣
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设