我厌倦了阻止我的CMD c和CMD v复制/粘贴的网站.特别是当他们的
javascript代码允许CONTROL c和CONTROL v通过而不被捕获.
我想使用Firefox 4的新CAPS安全策略来创建一个规则,为任何尝试从任何元素上的事件处理程序捕获onkeypress的站点提供“noAccess”,并阻止它们阅读e.which.
这里有一段javascript代码,可以防止我将邮政编码粘贴到文本区域,因为网站作者想要在该字段中使用“仅限数字”,因此“CMD v”(粘贴)被捕获并丢弃在地板上.
function numbersonly(myfield,e,dec) var key,keychar; if (e) key = e.which; else return true; keychar = String.fromCharCode(key); // control keys if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true; else if ((("0123456789").indexOf(keychar) > -1)) return true; else return false; }
那么HTML代码将具有:
<INPUT NAME="zipcode" onKeyPress="return numbersonly(this,event)">
如何在Firefox4中设置禁用网站调用此事件处理函数的能力的策略?
使用“Control de Scripts”扩展,我尝试将以下“块”添加到影响所有站点的“默认”策略,但没有一个允许我使用Firefox Metakey组合,同时专注于具有此功能的文本字段事件处理程序监听
HTMLInputElement.onKeyPress
Window.numbersonly
Window.onKeyPress
Window.onkeypress
event.preventDefault
现在我们用的是Firefox 14而不是4.这种noAccess的支持是否更有效/可用于结束像我这样的Firefox用户?