2016-02-26 80 views
1

我有代碼添加的東西在html標籤與jQuery。如果我直接以html的形式編寫代碼。例如像這樣:<span id='target'></span>然後能夠正常行走。添加jQuery替換後不工作

但我沒有訪問權限,所以我需要從外部添加,我認爲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> 

有一個解決方案?

+0

使用相同的ID在一個頁面上創建多個元素會讓您有麻煩 –

回答

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循環將首先執行。所以最終它會產生意想不到的結果。