iview“官方“实现的右键菜单

  博客开篇,没想到第一篇博文居然是前端的,虽略显尴尬,但正能量溢出,你我可能遇到一样问题,在这里分享下我的方案,但愿对你有用。前端

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

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

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

模板以下pdo

逻辑以下:get

 

截图效果:源码

源码跟踪:博客

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

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

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

相关文章
相关标签/搜索