我似乎无法理解我必须在这里做什么。我正在尝试创建一个简单的图像幻灯片,并试图弄清楚如何使它工作。它没有通过我的 for 循环,我不明白为什么。这是我的代码的一个小提琴:http: //jsfiddle.net/xnEGt/。
问问题
399 次
1 回答
1
这里:http: //jsfiddle.net/xnEGt/6/
什么问题:
- 图片必须首先通过 CSS 隐藏,只有第一张图片可见
- 通过使用 for 循环,所有图像将只显示一次。请注意, .delay() 不会影响循环,因此所有迭代都将立即进行
- 您可以通过使用 setTimeout 的递归实现来解决此问题
.get(0)
和.get(1)
选择器也错了,nth-child(i)
改用。var slideCount = $('.slider div.slide').length; nextPic(0); function nextPic(i){ var next = (i+1)%(slideCount+1); $('.slider div:nth-child('+i+')').fadeOut(100); $('.slider div:nth-child('+next+')').fadeIn(100); setTimeout(function(){nextPic(next);},1000); }
或者使用
.get()
选择器的更紧凑的实现:http: //jsfiddle.net/xnEGt/7/
于 2012-07-03T07:15:13.310 回答