禁用页面上显示的所有keyup / keydown / keypressed事件

我在我的页面上有很多关键事件。是否有任何方法可以禁用页面上显示的所有keyup / keydown / keypressed事件,而不是单独禁用每个事件。 我正在寻找使用javascript / jquery的解决方案。

谢谢!!

可以这样做,虽然我预计它在较大的页面上可能会非常慢:

$('*').off('keyup keydown keypress'); 

这将选择页面上的每个元素,然后删除绑定到它们的任何keyupkeydownkeypress事件。

如果要阻止用户使用退格键导航到上一页,可以尝试以下代码:

 var inputTags = ['INPUT', 'TEXTAREA']; $(document).on('keypress', function(e) { if(e.which === 8 && $.inArray(e.target.tagName, inputTags) === -1) e.preventDefault(); }); 

这应该限制退格键的使用,除非在焦点是输入元素的情况下,您可以输入文本(所以 )。

看看这个工作演示 。

尝试

 $(document).find('*').off('keyup keydown keypressed'); 

并且你应该在页面上所有加载的JS之后(例如在标记之前$(document).ready()将它放入$(document).ready()块中。

你可以使用preventDefault()函数来解决它

$(’*’)。unbind(’keyup keydown keypress’)

对我来说,这个组合:

打开按键事件

 $(document).keypress(function(){ // Code }); 

此代码使用substr删除TextBox2中按下的最后一个键。

  `$("#TextBox2").val($("#TextBox2").val().substr(0, ($("#TextBox2").val().length-1)));` //removes last letter pressed.