-2

我一直在我的 jquery 代码中使用 .live() 但是当动态生成 html 时它会失败,那么 jquery 中是否有 .live() 的替代方法?

4

3 回答 3

1

首先,.live折旧删除,并替换为.on

从 jQuery 1.7 开始,不推荐使用 .live() 方法。使用 .on() 附加事件处理程序。旧版本 jQuery 的用户应该使用 .delegate() 而不是 .live()

如果您正在“动态”生成元素,则需要将它们绑定到一个函数,并且由于它们尚未在 DOM 中,您需要绑定到文档,并委托给特定元素:

$(document).on("event", "element", function(){
    //do what you need here
});

由于您没有提供任何代码,我只能给您一个大致的概念,如上所示

于 2013-11-04T10:28:00.240 回答
0

.live()已折旧,请.on()改用。

于 2013-11-04T10:26:26.690 回答
-3

the purpose of live is exactly to works when html is generated dynamically. Maybe you have to put your .live call inside a $(document).ready :

$(document).ready(function(){
  $("class selector").live(function(e){
    // your code here
  })
});

and, like commented by others in the question, live() should be replaced by a new syntax you can see here : Turning live() into on() in jQuery

于 2013-11-04T10:24:00.407 回答