Javascript 添加动态元素后的JQuery绑定事件
动态添加元素后,我遇到了一个问题,因为它没有单击事件,因此我有以下问题:Javascript 添加动态元素后的JQuery绑定事件,javascript,jquery,html,events,Javascript,Jquery,Html,Events,动态添加元素后,我遇到了一个问题,因为它没有单击事件,因此我有以下问题: $(".myclass > li").click(function () { ... }); 所以基本上,当我点击LI元素时,应该会发生一些事情,并且它会起作用 但当我向myclass添加一个新的LI元素(即UL元素)时,这个新添加的元素不会调用这个函数 我的问题是如何将这个新元素重新绑定或绑定到此函数 因为当我点击其他元素时,它们工作,但只有新元素不工作。。。我假设绑定发生在回发或其他情况下,但在我的情况
$(".myclass > li").click(function () {
...
});
所以基本上,当我点击LI元素时,应该会发生一些事情,并且它会起作用
但当我向myclass添加一个新的LI元素(即UL元素)时,这个新添加的元素不会调用这个函数
我的问题是如何将这个新元素重新绑定或绑定到此函数
因为当我点击其他元素时,它们工作,但只有新元素不工作。。。我假设绑定发生在回发或其他情况下,但在我的情况下没有回发:/需要用于支持动态元素
$(".myclass").on('click', '> li' function () {
...
});
需要使用来支持动态元素
$(".myclass").on('click', '> li' function () {
...
});
你需要使用。您必须使用委托事件方法
i、 e
就你而言
$(document).on('click', '.myclass > li', function () {
...
});
或者,如果要应用于所有列表项:
$(".myclass").on('click', '> li', function () {
...
});
你需要使用。您必须使用委托事件方法
i、 e
就你而言
$(document).on('click', '.myclass > li', function () {
...
});
或者,如果要应用于所有列表项:
$(".myclass").on('click', '> li', function () {
...
});
由于元素是在绑定事件后添加的,因此它没有附加处理程序,并且
bind
函数不会侦听可能添加的任何新元素
因此,您需要使用事件委派。当事件触发时,它将一直冒泡到父文档。使用jQuery.on()
函数,您可以侦听从目标中冒出的事件
在您的情况下,您应该使用以下选项:
$(".myclass > li").click(function () {
...
});
$(父项).on(“单击”,“li”,function(){…})代码>
上面将侦听单击元素上发生的事件,并冒泡到父元素。在事件处理程序中,此
将引用触发事件的li
元素。如果您不认识家长,您可以收听文档
您可以了解有关.on()
函数的更多信息。由于元素是在绑定事件后添加的,因此它没有附加处理程序,并且绑定
函数不会侦听可能添加的任何新元素
因此,您需要使用事件委派。当事件触发时,它将一直冒泡到父文档。使用jQuery.on()
函数,您可以侦听从目标中冒出的事件
在您的情况下,您应该使用以下选项:
$(".myclass > li").click(function () {
...
});
$(父项).on(“单击”,“li”,function(){…})代码>
上面将侦听单击元素上发生的事件,并冒泡到父元素。在事件处理程序中,此
将引用触发事件的li
元素。如果您不认识家长,您可以收听文档
您可以了解更多有关.on()
函数的信息。可能重复您是如何遗漏该问题的,标题几乎与您的相同?当我在“提问”页面中键入您的标题时,建议框中会显示数十个其他相同的问题。可能重复您是如何遗漏该问题的,标题与您的几乎完全相同?当我在提问页面中简单地键入您的标题时,建议框中会显示几十个其他相同的问题。