并不是说我试图阻止"查看源代码"或任何愚蠢的东西,但我正在为某些元素制作一些自定义上下文菜单.
编辑:回答答案:我试过这个:
by0.. 110
如果您不想在每次尝试右键单击时向用户发出消息警报,请尝试将其添加到您的正文标记中
这将阻止对上下文菜单的所有访问(不仅来自鼠标右键,还来自键盘)
但是,添加右键禁用器确实没有意义.具有基本浏览器知识的任何人都可以查看源并提取他们需要的信息.
如果您不想在每次尝试右键单击时向用户发出消息警报,请尝试将其添加到您的正文标记中
这将阻止对上下文菜单的所有访问(不仅来自鼠标右键,还来自键盘)
但是,添加右键禁用器确实没有意义.具有基本浏览器知识的任何人都可以查看源并提取他们需要的信息.
捕获onContextMenu
事件,并在事件处理程序中返回false.
您还可以event.button
在某些浏览器中捕获click事件并检查触发事件的鼠标按钮.
我用过这个:
document.onkeydown = keyboardDown; document.onkeyup = keyboardUp; document.oncontextmenu = function(e){ var evt = new Object({keyCode:93}); stopEvent(e); keyboardUp(evt); } function stopEvent(event){ if(event.preventDefault != undefined) event.preventDefault(); if(event.stopPropagation != undefined) event.stopPropagation(); } function keyboardDown(e){ ... } function keyboardUp(e){ ... }
然后我在最后两个函数中捕获e.keyCode属性 - 如果e.keyCode == 93,我知道用户释放了鼠标右键或按下/释放了上下文菜单键.
希望能帮助到你.