我在播放幻灯片方面遇到了问题(问题与此问题几乎相同Simple jQuery Slideshow Image Moving Downwards for a Split Second,但它对我不起作用)。问题出在next()
电话上。我试着做一种睡眠功能,但我不能在那里打电话。
这是我的代码:
CSS:
.slidePromo {
margin-top: 20px;
margin-bottom: 20px;
position: relative;
width: 700px;
height: 300px;
padding: 10px;
box-shadow: 0 0 20px rgba(0,0,0,0.4);
overflow: hidden;
}
.slideshow > div {
position: absolute;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
overflow: auto;
}
HTML:
<div id="slidePromo" class="slidePromo">
<div><img src="./promos/banner.jpg"></div>
<div><img src="./promos/next.jpg"></div>
<div><img src="./promos/splash.jpg"></div>
</div>
JQuery的
function slider(id, fade, timer) {
$("#" + id + " > div:gt(0)").hide();
setInterval(function() {
$('#' + id + ' > div:first')
.fadeOut(fade)
.next()
.fadeIn(fade)
.end()
.appendTo("#" + id);
}, timer);
}
任何想法?谢谢和问候。
答案 0 :(得分:2)
试试这个:
setInterval(function() {
$('#slideshow > div:first')
.fadeOut(100,function(){
$(this).next().fadeIn(1000).end().appendTo('#slideshow');
});
}, 3000);
在淡出时使用回调功能,它会等到它完全消失后再追加另一个。
答案 1 :(得分:0)
可能因为css你有班级slideShow
,但你的包装有班级slidePromo
。这个css块甚至不适用于smth。更改类 - 它将在没有jquery更改的情况下工作。
P.S。 jquery代码很糟糕。试试这个:
function slider(id, fade, timer) {
var holder = $('#' + id);
holder.find(" > div:gt(0)").hide();
setInterval(function() {
holder.find(' > div:first')
.fadeOut(fade)
.next()
.fadeIn(fade)
.end()
.appendTo(holder);
}, timer);
}
这几乎没有升级。