iview通过Dropdown(下拉菜单)实现的右键菜单


Posted in Javascript onOctober 26, 2018

官方目前不提供右键菜单,这里借助Dropdown(下拉菜单)来实现,故为“官方“。

既然Dropdown有类似功能,如果将其文字隐藏,并且在合适时机弹出,便可实现,其自身就是iview中一个组件,不言而喻,功能强大、简洁。

源码之下,了无秘密,简单陈述下思路,在模板中正常使用Dropdown组件,属性、样式需要单独设置(style="display:none" trigger="click"),即默认不显示,click触发,右键按下时首先设置其可见,在更改reference对象引用即可。

模板如下

iview通过Dropdown(下拉菜单)实现的右键菜单

逻辑如下:

iview通过Dropdown(下拉菜单)实现的右键菜单

源码跟踪:

一。标签a不可见,原本以为只要改变left top,菜单会自动跟随,其位置是通过调用元素的getBoundingClientRect来获取,因标签不可见,拿到都是0,此路不通,pass;

二。也可以改变标签的z-index顺序,使其在目标节点之下,这里动态改变其引用节点来实现。

理论上任何组件都可实现右键菜单。

总结

以上所述是小编给大家介绍的iview通过Dropdown(下拉菜单)实现的右键菜单 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript中关于执行环境的杂谈
Aug 14 Javascript
Jquery动态改变图片IMG的src地址示例
Jun 25 Javascript
使用js获取地址栏中传递的值
Jul 02 Javascript
jquery 表格排序、实时搜索表格内容(附图)
May 19 Javascript
JavaScript DOM 学习总结(五)
Nov 24 Javascript
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
Jun 22 Javascript
JavaScript中Math对象的方法介绍
Jan 05 Javascript
利用forever和pm2部署node.js项目过程
May 10 Javascript
原生JS实现层叠轮播图
May 17 Javascript
基于jQuery实现手风琴菜单、层级菜单、置顶菜单、无缝滚动效果
Jul 20 jQuery
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
Jul 22 jQuery
vue异步加载高德地图的实现
Jun 19 Javascript
Javascript中弹窗confirm与prompt的区别
Oct 26 #Javascript
Phaser.js实现简单的跑酷游戏附源码下载
Oct 26 #Javascript
如何用Node写页面爬虫的工具集
Oct 26 #Javascript
Javascript中绑定click事件的四种方式介绍
Oct 26 #Javascript
使用webpack打包后的vue项目如何正确运行(express)
Oct 26 #Javascript
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
Oct 26 #jQuery
详解ES6 系列之异步处理实战
Oct 26 #Javascript
You might like
php中使用preg_match_all匹配文章中的图片
2013/02/06 PHP
php单文件版在线代码编辑器
2015/03/12 PHP
phpMyAdmin无法登陆的解决方法
2017/04/27 PHP
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
extjs 的权限问题 要求控制的对象是 菜单,按钮,URL
2010/03/09 Javascript
js中判断控件是否存在
2010/08/25 Javascript
IE与FireFox中的childNodes区别
2011/10/20 Javascript
jquery图片放大镜功能的实例代码
2013/03/26 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
2015/08/20 Javascript
js图片卷帘门导航菜单特效代码分享
2015/09/10 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
2015/09/24 Javascript
JQuery实现列表中复选框全选反选功能封装(推荐)
2016/11/24 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
vue项目开发中setTimeout等定时器的管理问题
2018/09/13 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
2019/04/22 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
JavaScript中的全局属性与方法深入解析
2020/06/14 Javascript
[01:04:01]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第一场
2014/05/24 DOTA
python提取内容关键词的方法
2015/03/16 Python
Python文件去除注释的方法
2015/05/25 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
详谈Numpy中数组重塑、合并与拆分方法
2018/04/17 Python
Numpy数据类型转换astype,dtype的方法
2018/06/09 Python
python 获取一个值在某个区间的指定倍数的值方法
2018/11/12 Python
详解matplotlib绘图样式(style)初探
2021/02/03 Python
Sunglasses Shop瑞典:欧洲领先的太阳镜网上商店
2018/04/22 全球购物
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
Why we need EJB
2016/10/20 面试题
Java servlet面试题
2012/03/04 面试题
社团文化节策划书
2014/02/01 职场文书
教师师德考核自我评价
2014/09/13 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
演讲比赛通讯稿
2015/07/18 职场文书