有没有办法将jQuery应用于动态创建的元素?(不是事件听众)



我已经动态创建了一个元素,其中包括以下类:

<span class="text">Hello</span>

和jQuery:

function changeText() {
   var oldText = $(this).text();
    $(this).text(oldText + " There");
}
$(function() {
    $(".text").each(function(){
        changeText.apply(this);
    })
})

显然,这是实际发生的事情的简化版本,但基本知识在那里。即使我们不使用事件侦听器,也可以将此规则应用于动态创建的元素吗?

这里的问题是这些" .text"元素没有特定位置。我们知道这些出现的唯一地方是体内。我在身体上使用突变处理器...这不是征税表现吗?

而不是这样做:

function changeText() {
  var oldText = $(this).text();
  $(this).text(oldText + ' There');
}
$(function(){
$('.text').each(function(i, e){
  changeText.call(e);
});
});

喜欢这个

$dynamicElement.find(".text").each(function(){
    changeText.apply(this);
})

最新更新