不懂就问, vue 有什么办法捕捉鼠标右键点击事件吗?

2020-07-04 19:02:11 +08:00
 black11black

如题,目前有一个需求是需要,当用户在特定 div 上按下右键时,执行某某操作。

简单百度了一下通过 js 里面的 document.onmousedown 和 window.event 似乎可以实现,但是这样实现的是捕捉整个窗口的右键事件。

请问 vue 里有办法针对特定 div 实现吗?谢谢

3234 次点击
所在节点    JavaScript
5 条回复
liyang5945
2020-07-04 19:11:00 +08:00
@mousedown.right.=someFunc()
chnwillliu
2020-07-04 19:40:32 +08:00
dom 事件叫 oncontextmenu,你换成 Vue 的语法绑就行。
zhuangzhuang1988
2020-07-04 19:53:28 +08:00
black11black
2020-07-04 21:41:36 +08:00
@zhuangzhuang1988 感谢感谢
nianyu
2020-07-04 22:51:48 +08:00
魔改一下浏览器事件就好了 比如
EventTarget.prototype.addEventListener = withHookBefore(
EventTarget.prototype.addEventListener,
myHookFn // 自定义的钩子函数
)

再把那些特定的 div 添加特定的 class
如果 e.target.className 等于设置好的 class 就做一些自定义操作

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/687162

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX