Aln*_*dru 1 html javascript jquery events
动态添加元素后我有一个问题,它没有click事件,所以我有以下内容:
$(".myclass > li").click(function () {
...
});
Run Code Online (Sandbox Code Playgroud)
所以基本上当我点击LI元素时应该发生一些事情并且它有效.
但是当我向myclass添加一个新的LI元素是UL元素时,这个新添加的元素不会调用此函数.
我的问题如何重新绑定或绑定这个新元素到这个函数..?
因为当我点击它们时其他元素工作,但只有新元素不...我想这是绑定发生在回发或somethnig但在我的情况下没有回发:/
您需要使用 事件委派.您必须使用委托事件方法使用.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)