Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery幻灯片显示行为不端_Jquery_Css - Fatal编程技术网

jQuery幻灯片显示行为不端

jQuery幻灯片显示行为不端,jquery,css,Jquery,Css,每次脚本在图像之间切换时,都会向下推上一个图像。有什么方法可以防止这种情况发生吗?这是您的代码: $(function(){ $('.fadein div:gt(0)').hide(); setInterval(function(){ $('.fadein div:first-child').fadeOut() .next('div').fadeIn() .end().appendTo('.fadein');}, 60

每次脚本在图像之间切换时,都会向下推上一个图像。有什么方法可以防止这种情况发生吗?

这是您的代码:

$(function(){
    $('.fadein div:gt(0)').hide();
    setInterval(function(){
      $('.fadein div:first-child').fadeOut()
         .next('div').fadeIn()
         .end().appendTo('.fadein');}, 
      6000);
});
FadeIn和FadeOut是可以同时运行的Ajax调用。在你的情况下,这就是正在发生的事情:

图1淡出开始
图2 FadeIn开始
将图1移动到列表的末尾(仍然可见,请参见跳转)
图1淡出端(现在不可见)
图2 FadeIn结束(现在可见)

我不完全确定您在寻找什么行为,但我猜您希望使用动画完成时运行的淡出/淡出回调机制。例如:

   $(function(){
    $('.fadein div:gt(0)').hide();
    setInterval(function(){
      $('.fadein div:first-child').fadeOut(function() {
                 $('.fadein div:first-child').appendTo('.fadein'); // Move to end
                 $('.fadein div:first-child').fadeIn(); // Fade In new first image
              }
           );
          }, 6000);
});
这将等到第一个孩子完成淡出,然后它将撞到他最后,淡出新的第一个孩子。这些选择器不是最有效的;也许有更好的办法