这可能是这里的几个问题,我正在创建一个图像库,并希望缩略图一个接一个地淡入页面,这需要动态的div内的图像数量(对于重用其他画廊页面)
$(function {
var $gallImages = $('#galleryThumbs img');
for(i=0; i<=$gallImages.length; i++){
$(document.getElementById('galleryThumbs').getElementsByTagName('img')[i]).addClass('done').fadeIn('slow');
}});
这会在加载的同时显示所有图像:(
还有更好的方法在jQuery中进行元素收集我找不到任何关于使用图像标记所需的数组的信息
任何有关这方面的帮助都将受到赞赏,我正在对此进行精神障碍
答案 0 :(得分:3)
您可以为每个添加.delay()
,如下所示:
$(function {
$('#galleryThumbs img').each(function(i) {
$(this).delay(i*600).fadeIn('slow')
});
});
我不确定什么时候应该添加你的课程,你可以立即或.queue()
添加它,具体取决于它是否应该在淡入淡出之前发生。这会在第一个中立即消失,第二个600毫秒后(第一个淡入淡出结束时),下一个淡入淡出等等。如果您希望重叠低于600
(这是'slow'
)。
要立即添加课程,请逐一淡出:
$('#galleryThumbs img').addClass('done').each(function(i) {
$(this).delay(i*600).fadeIn('slow')
});
或者,在褪色之前添加它:
$('#galleryThumbs img').each(function(i) {
$(this).delay(i*600).queue(function(n) { $(this).addClass('done'); n(); })
.fadeIn('slow')
});