Javascript 如何在jQuery上重复或循环此队列?

Javascript 如何在jQuery上重复或循环此队列?,javascript,jquery,loops,queue,Javascript,Jquery,Loops,Queue,这是褪色幻灯片的代码。有没有办法重复或循环此队列?在此顶部代码$(“#page2_image”)上重新开始。隐藏() 以下是jQuery中的代码: $(document).ready(function(){ $("#page2_image").hide(); $("#page3_image").hide(); $("#page1_image").fadeOut(10000); $("#page2_image").fadeIn(10000).fadeOut(10000);

这是褪色幻灯片的代码。有没有办法重复或循环此队列?在此顶部代码
$(“#page2_image”)上重新开始。隐藏()

以下是jQuery中的代码:

$(document).ready(function(){
   $("#page2_image").hide();
   $("#page3_image").hide();
   $("#page1_image").fadeOut(10000);
   $("#page2_image").fadeIn(10000).fadeOut(10000);
   $("#page3_image").delay(10000).fadeIn(10000);
});

谢谢你的帮助

您可以使用
fadeIn()的回调


您也可以尝试一种类似的方法

我认为您正在寻找的是一种稍有不同的方法,比如:

$(function() {
  var images = ['#page1_image', '#page2_image', '#page3_image'], i = 0;
  function rotate() {
    $(images[i]).fadeOut(10000);
    i = (i+1)%images.length;
    $(images[i]).fadeIn(10000, rotate);
  } 
  $.each(images.slice(1), function(index, val) { $(val).hide(); });
  rotate();  
});​
,如果不平滑淡入第一个图像,则循环循环时,动画将发生跳跃。以上内容会连续平滑淡出,适用于任何数量的元素,只要将它们的选择器添加到数组中即可

这些组成部分包括:

  • 将选择器数组设置为淡入淡出…如果选择器不是ID,您甚至可以将其缓存在此处。这是一个好主意,而不是字符串
  • Rotate淡出当前,获取下一个(如果需要环绕)并淡入,完成后将再次调用
    Rotate
  • 最后,我们隐藏除第一个(via)之外的所有图像,并开始循环

使用setInterval使该功能每X秒重复一次

function slideSwitch() {
   $("#page2_image").hide();
   $("#page3_image").hide();
   $("#page1_image").fadeOut(10000);
   $("#page2_image").fadeIn(10000).fadeOut(10000);
   $("#page3_image").delay(10000).fadeIn(10000);
}

$(function() {
    setInterval( slideSwitch, xxxx );
});

它应该是
setInterval(滑动开关,xxxx)
,尽量不要将字符串传递给
setInterval()
setTimeout()
,这样会产生不必要的开销并更改范围。
function slideSwitch() {
   $("#page2_image").hide();
   $("#page3_image").hide();
   $("#page1_image").fadeOut(10000);
   $("#page2_image").fadeIn(10000).fadeOut(10000);
   $("#page3_image").delay(10000).fadeIn(10000);
}

$(function() {
    setInterval( slideSwitch, xxxx );
});