jQuery结合on()和addClass()

时间:2014-06-10 15:56:00

标签: javascript jquery javascript-events

我有一个keydown事件绑定附加到具有“numbersOnly”类的元素,如下所示:

$('.numbersOnly').keydown(function(e) {
    // Determine which key was pressed and ignore if not a number.
});

这适用于页面加载时添加的所有元素。但是,如果我使用.addClass()动态地将类添加到元素,则事件不会触发该元素。我已经尝试将.keydown(更改为.on('keydown',但它没有任何区别(我知道它不应该 - 它们应该是相同的)。

我正在使用jQuery 1.9.1,但我也在2.x中对此进行了测试,但它也无法正常工作。这是一个工作示例的小提琴:

http://jsfiddle.net/2L5cg/

1 个答案:

答案 0 :(得分:2)

在动态添加类时,您需要使用delegated event

$(document).on('click','.boxClick', function() {
    $('#displayText').show();
});

UPDATED FIDDLE