[英]How to distinguish between an event triggered by a mouse action VS an event triggered by EXTJS
[英]How can action be triggered on any mouse button event?
为此,我实际上没有编写任何程序,但是我想了解它是如何在JS中实现以对抗它的。
我知道onclick
, onmousedown
, onmouseup
和ondblclick
。 我使用以下规则(Privoxy;简单文本替换)将这些事件阻止在页面上:
s@onclick=@noclick=@gi
s@onmousedown=@nomousedown=@gi
s@onmouseup=@nomouseup=@gi
s@ondblclick=@nodblclick=@gi
我知道这很粗糙,这不是重点。
但是页面仍然对鼠标事件做出反应,当我单击静态文本时,它会给我带来很多弹出式窗口和弹出式窗口。
那么,Javascript中还有另一个鼠标按钮事件吗? 什么技巧可以应用于JS来避免使用这4个过滤器?
除了将事件处理程序添加为HTML中的属性以及JavaScript中HTMLElements的属性外,您还可以使用JavaScript通过HTMLElement.prototype.addEventListener
将处理程序附加到元素上,从而使您可以为同一事件附加许多处理程序。
这种附加处理程序的方式很可能是绕过当前块的一种方式,并且可能很难删除。
绕过它的一种方法是(必须在要阻止的行之前执行)
HTMLElement.prototype.addEventListener = (function (listen) {
return function (a) {
if (a === 'click') // for example
return;
return listen.apply(this, arguments);
};
}(HTMLElement.prototype.addEventListener));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.