我正在使用此代码:
document.oncontextmenu = (function() {
var counter = 0;
return function() {
counter++;
if (counter == 3) {
$("<div id='r-click'></div>").appendTo("#container").html("<span>!!! Protected content !!!</span>").fadeIn(500).show().delay(4000).fadeOut(800, function() {
counter = 0;
});
}
return false;
};
})();
现在,我的问题是我有一个带有横幅HTML代码的textarea,我只需要上下文菜单。 是否可以编辑我使用的代码?
答案 0 :(得分:1)
您需要使用event
对象,该对象将传递给oncontextmenu
函数。
这里是解决方案:
document.oncontextmenu = function(e) {
var self = this;
self.cnt = self.cnt || new(function() {
this.counter = 0;
});
if (e.target.id !== "someBannerId") {
return false;
} else {
self.cnt.counter++;
if (self.cnt.counter === 3) {
$('#r-click').remove();
$("<div id='r-click'></div>").appendTo("#container").html("<span>!!! Protected content !!!</span>").fadeIn(500).show().delay(3000).fadeOut(800, function() {
self.cnt.counter = 0;
});
}
}
};
答案 1 :(得分:0)
这是最后的工作示例:
var counter = 0;
document.oncontextmenu = function(e) { if (e.target.id != "txt") {
counter++;
if (counter == 3) {
$("<div id='r-click'></div>").appendTo("#container").html("<span>!!! Protected content !!!</span>").fadeIn(500).show().delay(2000).fadeOut(800, function() {
counter = 0 });
}
return false; };
};