追加不起作用后jQuery替换

时间:2016-02-26 17:29:27

标签: jquery

我有使用jQuery在html标记中添加内容的代码。如果我以html的形式直接编写代码。例如:<span id='target'></span>然后能够正常行走。

但是我无权访问,所以我需要从外部添加,我认为jQuery是最好的选择。 事实证明这是失败的。

我的代码:

<div class="namediv">
<span class="box"></span>
</div>

<script>
var sender=[
'https://www.blogger.com/profile/12661450765726347282'
];

$(document).ready(function(){
$('.box').append("<span id='target'></span>")
});

for(var v=0; v<sender.length; v=v+1){
 $("a[href='"+sender[v]+"']").each(function(){
 $(this).closest(".namediv")
 .find("#target").replaceWith("<span id='bySender'>Author</span>");
 })
}
</script>

有解决方案吗?

1 个答案:

答案 0 :(得分:0)

尝试将替换代码部分放入dom准备好。

$(document).ready(function(){
  $('.box').append("<span id='target'></span>");
  for(var v=0; v<sender.length; v=v+1){
   $("a[href='"+sender[v]+"']").each(function(){
     $(this).closest(".namediv").find("#target")
     .replaceWith("<span id='bySender'>Author</span>");
   });
  }
});

如果你不这样做,那么首先执行for循环。所以最终它会产生意想不到的结果。