Javascript 隐藏右菜单/从嵌入html文件单击
当Javascript 隐藏右菜单/从嵌入html文件单击,javascript,jquery,html,safari,Javascript,Jquery,Html,Safari,当embedhtml文件上出现右键单击事件时,我试图隐藏上下文菜单 我的代码运行良好,但当我右键单击嵌入窗口时,菜单不再隐藏 如何明确隐藏上下文菜单(在Safari浏览器版本9.1.1(11601.6.17)的某些版本中) js 代码应该正常工作。。。正如你所说,它在强>你的代码(不在嵌入页面中)很好,取决于你用来嵌入页面的方法,YO可能(不能)修改它(你不能修改嵌入的网站来解决用户安全问题,特别是如果嵌入的站点在其他域中),你可以考虑使用代理。p> 我不知道隐藏上下文菜单的目的,但是如果我能
embed
html文件上出现右键单击事件时,我试图隐藏上下文菜单
我的代码运行良好,但当我右键单击嵌入窗口时,菜单不再隐藏
如何明确隐藏上下文菜单(在Safari浏览器版本9.1.1(11601.6.17)的某些版本中)
js
代码应该正常工作。。。正如你所说,它在<>强>你的代码(不在嵌入页面中)很好,取决于你用来嵌入页面的方法,YO可能(不能)修改它(你不能修改嵌入的网站来解决用户安全问题,特别是如果嵌入的站点在其他域中),你可以考虑使用代理。p>
我不知道隐藏上下文菜单的目的,但是如果我能给你我的建议,我认为这样做是不必要的,因为用户只是偶尔右键点击;但是,当他们这样做时,他们希望能够完成右键单击(复制、搜索、翻译和其他服务)时的常见操作。什么嵌入窗口?代码在所有情况下都有效,您具体说什么事件不起作用?右键单击时,我看不到任何上下文菜单。看不到发布代码不会隐藏正确的菜单顺便说一下,safari不起作用,除非您支持IE8或更早版本,否则您不再需要
attachEvent
。。。
if (document.addEventListener) {
document.addEventListener('contextmenu', function(e) {
alert("You've tried to open context menu"); //here you draw your own menu
e.preventDefault();
}, false);
} else {
document.attachEvent('oncontextmenu', function() {
alert("You've tried to open context menu");
window.event.returnValue = false;
});
}