现在,我已经知道了,您可以按向左箭头键执行一个事件(事件 1)。如果在该事件后按向右箭头键,它将执行另一个事件(事件 2)。
如何限制它,以便如果按两次左箭头键,它不会重复事件 1?
现在,我有:
$(document).keydown(function(f){
if (f.keyCode == 39) {
// do event 1 here with the left arrow key
}
$(this).keydown(function(f){
if (f.keyCode == 39) {
// do event 2 with the right arrow key
window.location.href = "index.php";
}
});
是否需要在事件 1 完成后将变量设置为 false 然后设置为 true?
最佳答案
在您的代码执行后,使用 $(this).unbind('keydown')
删除处理程序。
PS:通常你会对一次性事件使用 .one()
方法,但由于事件也会在你不想解除绑定(bind)的情况下触发(一个不同的键已被按下),需要手动解绑。
关于javascript - 在 jQuery 中已经对事件进行了一次调用后,如何防止事件重复发生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5493826/