复选框上的keydown不在FF中冒泡,但它在IE中确实存在。怎么解决?

时间:2009-10-09 23:42:17

标签: javascript jquery events

使用jQuery,我像这样全局绑定keydown:

$(document).bind('keydown', function(e) { alert('keydown fired'); });

当我按下一个聚焦了文本输入字段的键时,警报显示就好了。但是当我关注一个复选框然后按一个键时,它不会触发。即使是按键事件也没有。为什么这些事件没有冒泡到文档?它们在Internet Explorer中运行,但在Firefox中不运行。我该怎么解决这个问题?我不想明确地将keydown绑定到复选框,我希望能够使用委托。也许我不能?

THX,

/托米

1 个答案:

答案 0 :(得分:0)

尝试绑定更改。

$(document).bind('keydown', function(e) { alert('keydown fired'); })
.bind('change', function(e){ alert('keydown fired'); };

虽然专门针对复选框可能会更好。

$(document).bind('keydown', function(e) { alert('keydown fired'); });
$('input:checkbox').bind('change', function(e){ alert('keydown fired'); };