我有一个非常简单的jQuery幻灯片:http://jsfiddle.net/6zA4B/
HTML格式:
<div class="fadein">
<img src="http://farm3.static.flickr.com/2610/4148988872_990b6da667.jpg">
<img src="http://farm3.static.flickr.com/2597/4121218611_040cd7b3f2.jpg">
<img src="http://farm3.static.flickr.com/2531/4121218751_ac8bf49d5d.jpg">
</div>
JavaScript程式码:
$(function(){
$('.fadein img:gt(0)').hide();
setInterval(function(){$('.fadein :first-child').fadeOut().next('img').fadeIn().end().appendTo('.fadein');}, 3000);
});
它工作得很完美,我只是想用3个div替换3个img标签(这样我就可以在图片下面加上一个标题)。我该如何修改脚本来实现这一点呢?我试过了,但可能我做错了什么...
HTML格式:
<div class="fadein">
<p><img src="http://farm3.static.flickr.com/2610/4148988872_990b6da667.jpg">image1</p>
<p><img src="http://farm3.static.flickr.com/2597/4121218611_040cd7b3f2.jpg">image2</p>
<p><img src="http://farm3.static.flickr.com/2531/4121218751_ac8bf49d5d.jpg">image3</p>
</div>
JavaScript程式码:
$(function(){
$('.fadein p:gt(0)').hide();
setInterval(function(){$('.fadein :first-child').fadeOut().next('p').fadeIn().end().appendTo('.fadein');}, 3000);
});
5条答案
按热度按时间xurqigkl1#
您的一个选择器略微关闭:
选择
.fadein
下的第一个子元素。这包括p
元素的第一个子元素,也就是要旋转到的图像。您希望将
:first-child
选择器限制为.fadein
下的直接元素。一种方法是使用child selector:示例:http://jsfiddle.net/S4SmM/4/
njthzxwz2#
请使用下列程式码:
于飞:
CSS:
JS:
JsFiddle:http://jsfiddle.net/S4SmM/5/
hxzsmxv23#
我喜欢Andrew Whittaker的答案,但更喜欢使用Fadeout回调函数来给予其更“生动”一些:
szqfcxe24#
您也可以使用jquery-fade-slider插件
Link to Github Repo
r9f1avp55#