JQuery不适用于页面加载后创建的元素

JD *_*cks 1 jquery

如果我这样称呼:

$(".month-selector").change(function(){
    setStones();
});
Run Code Online (Sandbox Code Playgroud)

$(document).ready()它内部不适用于以后创建的元素.我也尝试在创建它们之后调用上面的代码:

$("#month-selectors").html(month_selectors);

$(".month-selector").change(function(){
    setStones();
});
Run Code Online (Sandbox Code Playgroud)

它仍然无法正常工作.但是,如果我创建一个静态的,它可以工作.

如何在页面加载后创建元素时将其应用于元素?

Bri*_*gan 14

您可以使用jQuery的'live()'方法将事件侦听器添加到当前和未来的节点.

$(".month-selector").live('change', function(){
    setStones();
});
Run Code Online (Sandbox Code Playgroud)