所以我感到有点困惑。我正在开发一个HTML5游戏项目,对于一个特定的菜单,我希望用户能够通过左键单击功能为图像添加值,但是然后通过右键单击而不是显示的菜单来删除值。我已经阅读了3种方法:
我一直在将事件监听器分配给div,由于某种原因我无法使if (event.button === 2)
工作,即使我读到的是鼠标右键。但是div.oncontextmenu = doRightClick;
工作正常。然后有event.which
,我似乎仍然不明白。它似乎是一个全局的event.button但是包含键盘键?
我的问题是,是否有理由使用event.button
或event.which
而不是.oncontextmenu
?一个人对另一个人有什么好处吗?或浏览器问题?我读到event.button
有不同的IE8值,而且有点蹩脚。非常感谢任何帮助,提前谢谢。
答案 0 :(得分:1)
contextmenu
事件并非真正用于右键点击;它用于上下文菜单,但是它们被调用(上下文菜单键盘键,使用一键式鼠标进行特殊点击等)。您可能仍希望捕获这些contextmenu
个事件,以便取消它们,然后使用mousedown
或mouseup
专门处理右键点击。