3

所以我感到有点困惑。我正在开发一个 HTML5 游戏项目,对于一个特定的菜单,我希望用户能够通过使用左键单击的功能为图像添加值,然后通过右键单击而不是显示菜单来删除值。我已经阅读了大约 3 种方法来做到这一点:

我一直在将事件侦听器分配给一个 div,由于某种原因我无法开始if (event.button === 2)工作,即使我读到那是鼠标右键。不过div.oncontextmenu = doRightClick;效果很好。然后是event.which,我似乎仍然不明白。它看起来像一个全局 event.button 但包含键盘键?

我的问题是,是否有理由使用event.buttonevent.which结束.oncontextmenu?一个比另一个有什么优势吗?还是浏览器有问题?我读到event.buttonIE8 有不同的值,在这之下有点蹩脚。非常感谢任何帮助,在此先感谢。

4

1 回答 1

1

contextmenu事件并不是真正的右键单击。它用于上下文菜单,但是它们被调用(上下文菜单键盘键,用一键鼠标进行特殊点击等)。您可能仍希望捕获这些contextmenu事件,以便可以取消它们,然后使用mousedownormouseup专门处理右键单击。

于 2013-06-18T20:35:37.183 回答