2012-07-07 44 views
0

我有問題得到這個工作。當我查看螢火蟲中的HTML時,它顯示我的容器內有2個對象,但只有1個img顯示!jquery appendTo多個項目到一個容器

我有一些非常簡單的代碼:

var img1 = $("<img />", {src : "myimg.png" }); 
var img2 = $("<img />", {src : "myimg2.png" }); 
img1.appendTo("#div"); 
img2.appendTo("#div"); 

<div id="div"></div> 

但只有第一個圖像將顯示,如果我註釋掉第一appendTo然後第二圖像將顯示,或者如果我顛倒順序的第二個會顯示而不是第一個。

+0

圖像是否存在? http://jsfiddle.net/yodapt/2V4GX/ – yoda 2012-07-07 02:25:44

+0

是的,如上所述'如果我註釋掉第一個appendTo然後第二個圖像會顯示,或者如果我顛倒了順序第二個將顯示,而不是第一個。 – thefoyer 2012-07-07 02:27:13

+0

適用於我:http://jsfiddle.net/2YtBe/在DOM可腳本化後執行腳本嗎? (即在文檔就緒功能中) – 2012-07-07 04:18:27

回答

0

這實際上並不涉及appendTo,但我的#div和圖像大小。奇怪。

0

我可以告訴你如何使用原生javascript追加元素嗎?這是更快,非常相似的語法。另外,它會讓你成爲更好的程序員。

首先,結賬的JavaScript模板,如果你還沒有。我個人使用http://handlebarsjs.com/

無論如何,這裏是如何用JavaScript來做你想做的。

var parentElement = document.getElementById("div"); 
var fragment = document.createDocumentFragment(); 

["myimg.png", "myimg2.png"].forEach(function(src) { 
var element = document.createElement("img"); 
element.src = src; 
fragment.appendChild(element); 
}); 

parentElement.appendChild(fragment);