JavaScript:仅在特定元素内捕获右键单击和禁用菜单

我编写了一个 jquery脚本,其中屏幕上有一个小网格,使用拖放用户可以在网格上放置切片(卡扣到位).目前,如果您将鼠标悬停在某个磁贴上,它会在旋转选项中淡入淡出,但如果您可以右键单击旋转(使其更自然),我会更喜欢它.我理解完全阻止右键通常是不满意的,所以想知道是否可能只是在一个特定元素内,然后捕获该事件,在JS中执行某些操作并禁用上下文菜单? – 适用于所有浏览器.

另外,目前我正在使用jQuery for effects和自定义javascript进行拖放,是否值得一看jQuery插件进行拖放?

非常感谢,

解决方法

要捕获右键单击,您可以使用此jquery:
$('#gridID').bind('contextmenu',function(e) {
   // do stuff here instead of normal context menu
   return false;
});

这适用于chrome,firefox和safari.没有测试IE.也适用于IE.唯一需要注意的是它显然不适用于Opera.所以,如果你能忍受……

相关文章

什么是深拷贝与浅拷贝?深拷贝与浅拷贝是js中处理对象或数据...
前言 今天复习了一些前端算法题,写到一两道比较有意思的题:...
最近在看回JavaScript的面试题,this 指向问题是入坑前端必须...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面