2011-01-12 29 views
1

我正在使用jquery json從flickr返回圖像。如果我想要將所有圖像附加到一個div上,那不是問題。我想要做的是返回36張圖片,但將1-9圖片添加到div 1和10-18,將div 19-27添加到div 3,將28-36添加到div 4。jQuery如何將圖像追加到多個div

+1

你是如何檢索圖像?它會是一個數組,一個JSON對象,XML嗎? (或者說,你需要使用什麼類型的變量/列表來工作並重復執行?) – 2011-01-12 23:01:28

+0

你可以發佈一個你現在在做什麼的代碼示例嗎? – 2011-01-12 23:01:52

回答

3

這應該做到這一點:

實施例:http://jsfiddle.net/9KyaK/

$images.each(function(i) { 
    if(i % 9 === 0) 
     $images.slice(i, i + 9).appendTo('#div' + (i/9)); 
}); 

假設$images是圖像的集合,並且每個div有的div0', 'div1


一個id 編輯:我有.appendTo('#div' + i);而不是.appendTo('#div' + (i/9));。修正並增加了一個例子。


編輯:針對您的特殊代碼,將其添加到getJSON回調結束。在for循環之後。

var $flickr = $('#flickr'); 
var $images = $flickr.children('a'); 

$images.each(function(i) { 
    if(i % 9 === 0) { 
     var newDiv = $('<div/>',{id:'div'+(i/9)}).appendTo($flickr); 
     $images.slice(i, i + 9).appendTo(newDiv); 
    } 
});