我正在寻找一种简单的方法来隐藏/禁用整个html页面的右键单击上下文菜单,但不是在一些可编辑的html元素中,就像使用jquery输入[text]和textarea一样。
我知道这个jquery代码,但是下面的代码将禁用所有html元素中的上下文菜单,即使在可编辑的对象中......
$(document).ready(function(){
$(this).bind("contextmenu", function(e) {
e.preventDefault();
});
});
答案 0 :(得分:18)
你可以检查你需要的标签:
$(document).ready(function(){
$(document).on("contextmenu",function(e){
if(e.target.nodeName != "INPUT" && e.target.nodeName != "TEXTAREA")
e.preventDefault();
});
});
答案 1 :(得分:3)
提供您的ID或类名,以指定您要禁用的区域,例如:
$("#your_id").bind("contextmenu", function(e) {
e.preventDefault();
});
答案 2 :(得分:2)
您可以使用它来禁用特定标记(替换img)
$(document).ready(function() {
$("img").bind("contextmenu",function(){
return false;
});});
答案 3 :(得分:1)
用于将其与您需要的所有元素绑定:
$(document).ready(function(){
$(document).bind("contextmenu",function(e){
e.preventDefault();//or return false;
});
});
答案 4 :(得分:0)
试试此代码
<input type="text" id="test1"/>
<input type="text" id="test2"/>
JS代码:
$( "#test1" ).on( "copy cut paste drop", function() {
return false;
});