我正在寻找一种在动态插入到页面中的新的.timeago()元素上触发$("abbr.timeago"函数的方法。现在这就是我要做的。
# Triggered on initial page load
# application.js.coffee
jQuery ->
# Timeago
$("abbr.timeago").timeago()有些元素被动态替换,我发现需要在将它们插入页面后调用timeago函数。
# Triggered after the new abbr.timeago elements have been inserted
// resolve.js.erb
$tweet = $("<%= j render 'conversation_for_tweet', tweet: @tweet %>");
$("#<%= dom_id @tweet, :conversation_for %>").replaceWith($tweet);
$tweet.find("abbr.timeago").timeago();是否有一种方法可以绑定到jQuery的.on $("abbr.timeago") 函数,以便动态插入的$("abbr.timeago")标记被自动称为 .timeago() ‘s?
相关阅读:
发布于 2013-08-14 19:48:50
on帮不了这个忙。您可以使用on将事件处理程序绑定到页上始终存在的内容,以便在绑定时可以在页以外的元素上触发事件。在这种情况下,有点不同。
当我知道事情发生了变化时,我就通过简单地再次运行$("abbr.timeago").timeago()来解决这个问题。
https://stackoverflow.com/questions/18238110
复制相似问题