I am using JQuery with the hotkeys plugin and having trouble unbinding an event. Specifically, I am trying to unbind a keypress event within the method that has been 开发者_Python百科bound to that keypress.
For example:
$(document).bind('keydown', 'space', doStuff)
function doStuff() {
    alert("Doing stuff");
    $(document).unbind('keydown', 'space');
}
I think I might have misunderstood the unbind call API - do I need to provide the third parameter ? In some documentation, it seems I must provide the function handler which I originally provided to bind as this parameter - but that function handler is the very function I am calling unbind from, so I have no handle to it ? or do I ?
Note that before today, I was using:
$(document).unbind('keydown');
This worked fine - I need to bind and unbind "space" at several points in the code, and this did the trick. But now I also have been binding OTHER key presses, and found this call was (not surprisingly) unbinding all key presses for all keys.
So how can I unbind some or all events for a specific key press, either using the hotkeys plugin, or without it ?
You need to use namespaces.
$(document).bind('keydown.space', 'space', doStuff)
function doStuff() {
    alert("Doing stuff");
    $(document).unbind('keydown.space', 'space');
}
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论