1

我有一些从 htmled 获得的 jquery 代码,可以将照片从一张转换到下一张。但是出现的第二张图片只出现一瞬间,然后转到下一张图片。之后循环很顺畅,没有问题。

这是jQuery:

$('.fadein img:gt(0)').hide();
setInterval(function () {
    $('.fadein :first-child').fadeOut(1500)
                             .next('img')
                             .fadeIn(1500)
                             .end()
                             .appendTo('.fadein');
}, 4000); // 4 seconds

你可以在这里看到它的作用:http ://www.zerogravpro.com/yurt/

4

2 回答 2

2

body尝试在结束标记之前移动所有 JavaScript 。

另外,一定要包装额外的 jQuery,$(function() {});这样代码在 DOM 准备好之前不会触发。见下文:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
  $('.fadein img:gt(0)').hide();

  setInterval(function () {
    $('.fadein :first-child').fadeOut()
                             .next('img')
                             .fadeIn()
                             .end()
                             .appendTo('.fadein');
  }, 4000); // 4 seconds
});
</script>
于 2013-02-10T23:57:02.750 回答
1
$('.fadein img:gt(0)').hide(); 

该行不起作用,因为它在 dom 初始化之前被调用。因此,最初显示的是第二张图像而不是第一张图像,这会导致打嗝。

于 2013-02-11T00:13:45.940 回答