我試圖做到這一點,但循環在第一次觸發後結束。任何想法來幫助我?jQuery觸發點擊循環後停止第一個
$(document).on('click', '#configurator .myalbumimgs .autofill', function(e) {
e.preventDefault();
var nb_of_images = $('#grid div.configimg').length;
for (i = 0; i < nb_of_images; i++) {
alert(i);
$('.imgpicker .photo .add').eq(i).trigger('click');
}
});
編輯1:一切工作正常,如果我刪除$( 'imgpicker .photo。新增 ')等式(1).trigger(' 點擊');並讓循環運行。
如果我把一個數字,像eq(3)選擇正確的一個,但只有那一個。然後它像以前一樣停下來。
在控制檯中沒有錯誤:S
編輯2:發現了正確的解決方案,我的錯誤與錯誤的元素上.EQ。感謝所有的建議!正確的代碼:
$(document).on('click', '#configurator .myalbumimgs .autofill', function(e) {
e.preventDefault();
if ($(this).not('.done')) {
var multiselector_nbimages = $('#grid').attr('data-nbimages');
var nb_images_selected = parseInt($('#grid div.configimg').not('.temp').length);
var max_nb_images = parseInt(multiselector_nbimages);
if (nb_images_selected < max_nb_images) {
var album_images = $(this).parent().parent().children('.imgpicker').children('.photo');
var nb_of_grid_images = $('#grid div.configimg.temp').length;
for (i = 0; i < nb_of_grid_images; i++) {
album_images.eq(i).children('.add').not('.selected').trigger('click');;
}
$(this).addClass('done');
} else {
alert(lang_valid_max_nb_of_photos);
}
}
});
@Alexander長度屬性... –
檢查控制檯是否有錯誤。它可能會因爲錯誤而中斷 –
任何控制檯錯誤,並且您應該執行.length -1,因爲您從循環中的0開始,並且長度從1開始計數 – noitse