我正在使用javascript开发一个应用程序,我想获取鼠标事件。要停止右键单击时出现的选项,我使用preventDefault()
功能,它在Firefox和Chrome中有效,但在Safari中不起作用。这是我的代码:
document.querySelector("#GL-Surface").addEventListener("mousedown", function(e) {
e.preventDefault();
/* Handle mouse events */
});
从另一个问题中,我得到了你应该return false;
但这仍然不起作用。 但是,当preventDefault()
用于键盘输入时,它可以在 Safari 中工作。那么如何防止 Safari 中鼠标事件的默认操作呢?
若要定位右键单击事件,请使用contextmenu
而不是mousedown
。
document.querySelector("#GL-Surface").addEventListener("contextmenu", function(e) {
e.preventDefault();
});
请注意,右键单击时出现的选项仅在释放右键单击按钮时出现,因此我认为mousedown
在这里根本不合适。