我在同一个对象上同时使用.keydown()和.keyup()事件处理程序,jquery会在键盘释放键时触发.keyup()。我想阻止jquery触发.keyup()事件,直到所有键都被释放(不仅仅是一个),因为我正在使用多按键功能...任何想法?
答案 0 :(得分:2)
存储keydown事件的计数以及keyup事件的计数。对于每次迭代,您需要从keydown计数中减去keyup计数。当计数达到0时,您将获得与keydowns一样多的键盘,然后您可以运行您的功能。
编辑:这是完美的FAR,但演示了概念http://jsfiddle.net/K2ny2/1/
function testKeys(u, d) {
var delta = u - d;
console.log(delta);
if(0 == delta) {
$('#result').show();
}
}
您可能希望包含一些代码以避免在有人按下键(重复)时出现问题。