添加元素动态后的JQuery绑定事件

Aln*_*dru 1 html javascript jquery events

动态添加元素后我有一个问题,它没有click事件,所以我有以下内容:

$(".myclass > li").click(function () {
    ...
});
Run Code Online (Sandbox Code Playgroud)

所以基本上当我点击LI元素时应该发生一些事情并且它有效.

但是当我向myclass添加一个新的LI元素是UL元素时,这个新添加的元素不会调用此函数.

我的问题如何重新绑定或绑定这个新元素到这个函数..?

因为当我点击它们时其他元素工作,但只有新元素不...我想这是绑定发生在回发或somethnig但在我的情况下没有回发:/

Sat*_*pal 5

您需要使用 事件委派.您必须使用委托事件方法使用.on().

$(document).on('event','selector',callback_function)
Run Code Online (Sandbox Code Playgroud)

在你的情况下

$(document).on('click', '.myclass > li', function () {
    ...
});
Run Code Online (Sandbox Code Playgroud)

或者,如果要应用于所有列表项:

$(".myclass").on('click', '> li', function () {
    ...
});
Run Code Online (Sandbox Code Playgroud)