目前,当我按住Ctrl键并按住它一段时间后,我在jQuery的帮助下绑定到keydown事件的处理程序会被多次触发 - 我希望避免多次触发它一个单独的新闻。我将如何实现这一目标?
答案 0 :(得分:3)
如果无论你做什么,都不必立即触发,你可以改为倾听keyup
[docs]。
否则,您可以在keydown
上设置一个标记并在keyup
上清除它:
$element.keydown(function() {
var data = $(this).data();
if(!data['pressed']) {
data['pressed'] = true;
// do stuff
}
}).keyup(function() {
$(this).data('pressed', false);
});