使jQuery插件工作在动态添加的元素上

时间:2011-02-21 11:16:31

标签: jquery html

好吧,我有这个插件(http://timeago.yarp.com/),可以在现有元素上运行。但是,当我动态添加元素时,效果不会应用于该新元素。如何使插件适用于动态添加的元素?

插件的语法是:

$("abbr.timeago").timeago();

3 个答案:

答案 0 :(得分:6)

添加动态元素时这是一个已知问题。你需要重新绑定你刚添加的元素。

例如:

$.ajax({
  url: "example.html",
  cache: false,
  success: function(html){
    var $jqueryElement = $(html);
    $("abbr.timeago", $jqueryElement).timeago();
    $("#results").append($jqueryElement);
  }
});

上面的示例重新绑定了从example.html返回的abbr.timeago,并将它们添加到DOM中。

答案 1 :(得分:2)

不确定,但你可以尝试这样的事情

$("abbr.timeago").ready(function(){

$(this).timeago();

});

答案 2 :(得分:0)

每次JS添加新元素时,只需在其上调用.timeago()