工作不能代替生活

.on does not work in place of live

本文关键字:生活 不能 工作      更新时间:2023-09-26

我已经知道。on应该取代。live有一段时间了,但是我从来没有能让它工作。

I have try:

$(this).on('click', function(){
    // Do something...
})
$(this).on({
    click: function(){ // Do something }
})

但这对我从来都不起作用!

特别是当我试图将事件绑定到最初页面上可能不存在的元素时。

谁能帮我把这个彻底弄清楚吗?

我使用的是最新版本的jquery

对于动态生成的元素,您需要使用

$(document).on('click','YOUR SELECTOR', function(){
});

这是因为文档是元素的容器,它可以监视DOM的变化。对于每个操作,都需要有一个显式的事件侦听器。如果你将一些东西绑定到$(this),当你删除它时,它(选择器)可能不存在。

像这样做:

$(".parent").on('click', ".child", function(){
    // Do something...
})

您使用的语法就像bind。要将event绑定到所有未来元素,请使用上述语法。

您需要指定哪些元素。

$element.on('click', '.foo', handler)

handler$element内所有活的.foo结合。