2012-08-22 21 views
0

我在現有div中追加div,然後再追加一個div到append div中,但它對我無效。我究竟做錯了什麼。請幫助。jQuery中的附加功能無法正常工作

<head> 
<script type="text/javascript"> 
$(function(){ 
$('a').click(function(){ 
var cl=$('#free').clone(); 
var jj=$('.append') 
var mm=jj.append('<div class="hii"></div>') 
mm.append(cl) 
}) 
}) 
</script> 
</head> 
<body> 
<div style="background:#F00; width:500px; height:50px" id="free"></div> 
<a href="#">hide</a> 
<div class="append"></div> 
</body> 
+0

這不是解決方案,但你錯過了很多';'。 – insertusernamehere

+0

;在JavaScript中是可選的。上面的代碼在我的最後。 –

+0

您使用'id''free'克隆了一個元素,因此您創建的元素沒有唯一的標識符。這不是有效的HTML,所以請避免這樣做。而不是'id =「free」','class =「free」'。另外,這是怎麼回事?你能創建一個小提琴或類似的東西來演示這個問題嗎? – jakee

回答

2

jj.append('<div class="hii"></div>')回報jj,而不是新的div。所以使用這個:

$(function(){ 
    $('a').click(function(){ 
    var cl = $('#free').clone(); 
    var jj = $('.append'); 

    var mm = $('<div class="hii"></div>'); 

    jj.append(mm); 
    mm.append(cl); 
    }); 
}); 
+0

爲什麼我的函數不起作用 – Carlos

+0

@SperanskyDanil&Amit:我可以看到兩個函數的輸出相同。 –

+0

@SperanskyDanil:我已經看到了,但問題是如果他的代碼錯了,那麼爲什麼它給出正確的輸出?你能解釋一下嗎? –