我堅持瞭解每個循環的行爲。jQuery的每個循環
這裏是我的代碼:
$.each(thumbs, function() { // where thumbs is array of strings
project = this;
$('#gallery').append(
'<li>'
+ '<a href="/portfolio/' + project + '">'
+ '<img src="/img/' + project + '_bw.jpg" id="' + project + '_bw" />'
+ '<img src="/img/' + project + '_tn.jpg" id="' + project + '_tn" />'
+ '</a>'
+ '</li>'
);
// alert(project); - alerts every element of array as expected
$('#' + project + '_bw').load(function() {
// alert(project); - alerts only the last element of array,
// but as many times as many elements in array
$('#' + project + '_bw').fadeIn(150,function(){
$('#' + project + '_tn').css("opacity", 1);
});
});
});
的問題是,當我試圖定義元素,在這裏我想執行.load功能的ID,它十分重視這一功能只的最後一個元素我正在循環的數組。
你需要把你的負載在外部功能,並通過項目作爲參數,並調用在循環功能(見範圍) –
嗨3dgoo,確保萬無一失。它是字符串數組:「proja」,「projb」,「projc」 – zee
您的負載沒有時間來完成循環以完成所有迭代,以確保每個循環都觸發一個獨特的加載操作,如上所述 –