简单的jQuery幻灯片图像向下移动一秒钟

时间:2013-02-19 22:24:13

标签: jquery html slideshow

所以我在这里有一个简单的幻灯片代码:

$("#slideshow > div:gt(0)").hide();

setInterval(function() { 
  $('#slideshow > div:first')
    .fadeOut(100)
    .next()
    .fadeIn(1000)
    .end()
    .appendTo('#slideshow');
},  3000);

这是我的HTML div:

<div style= "display:block;max-height: 210px;" id="slideshow">
   <div>
     <img src="https://lh5.googleusercontent.com/-hmenNgmckUY/UMYwzUQNdrI/AAAAAAAAB0Y/Z__BD-lxgYo/s912/gears.JPG">
   </div>
   <div>
     <img src="https://lh6.googleusercontent.com/-Xn464dhgk6g/UNTgxgKrbvI/AAAAAAAAAwA/2omVTkLCjSE/s928/didy%2520site%25201.JPG">
   </div>

</div>

这是一个工作小提琴:http://jsfiddle.net/shrimpboyho/9n9GK/

然而,请注意,当图片发生变化时,您可以看到之前的图像淡化并在完全消失之前向下移动?

这对我来说是一个问题,因为幻灯片放映需要放在一段文字上方,当图片发生变化时图片会在文字上闪烁,这很烦人。有什么办法可以解决这个问题。

2 个答案:

答案 0 :(得分:1)

<div style= "display:block;max-height: 210px;" id="slideshow">

这个最大高度实际上是否有效,如果是,请尝试:

 <div style= "display:block;max-height: 210px; overflow:hidden;" id="slideshow">

答案 1 :(得分:1)

#slideshow {
    position: relative;
}
#slideshow > div {
    position: absolute;
    top: 0;
    left: 0;
}

这会将图像放在彼此之上。