jjc*_*son 4 jquery bind event-handling javascript-events unbind
我正在使用jquery.hotkeys.js编写一个带有两种键盘模式的程序,我看到一些减速并在解除所有keydown事件绑定时闪烁.有一个更好的方法吗?
function bindAll() {
//bind all keystroke events
$(document).bind('keydown','a', function(evt) {
//...
}
$(document).bind('keydown','b', function(evt) {
//...
}
//etc...
}
function unbindAll() {
$(document).unbind('keydown');
return true;
} //end unbinding all keystrokes
Run Code Online (Sandbox Code Playgroud)
jQuery为您提供了为事件创建名称空间的可能性.看起来像:
$(document).bind('keydown.mySpace', function(evt) {
});
$(document).bind('keyup.mySpace', function(evt) {
});
// etc.
Run Code Online (Sandbox Code Playgroud)
您可以.unbind()添加到命名空间中的所有事件,如下所示:
$(document).unbind('.mySpace');
Run Code Online (Sandbox Code Playgroud)
我不知道你提到的插件,但你应该看看文档甚至更好的源代码.如果它设计得很好,你应该能够为此目的使用jQuery事件命名空间.