代码之家  ›  专栏  ›  技术社区  ›  Rakward

jquery delay()-函数中断循环?

  •  1
  • Rakward  · 技术社区  · 14 年前

    我试图淡入和淡出一个元素,但是中间稍微停顿一下,它就可以不停顿地工作,但是当我使用jquery delay()函数添加停顿时,它就在第一个淡出()之后停止了;

    代码如下:

    $('#headerimage2').each(function(){
    for(i=1;i<50;i++){
        $(this).fadeOut(1200).delay(1000).fadeIn(1000).delay(1000);
        }
    });
    

    为什么delay()函数(第一个和第二个)会中断循环?

    2 回复  |  直到 14 年前
        1
  •  4
  •   BradBrening    14 年前

    在黑暗中拍摄,但你确定你使用的是1.4版本的库。这是该版本的新函数。

        2
  •  1
  •   Bosh    14 年前

    您发布的代码在firefox、safari和chrome中使用最新的jquery完美工作:

    <!DOCTYPE html>
    <html>
    <head>
      <style>
    div { width: 60px; height: 60px; float: left; }
    .first { background-color: #3f3; }
    </style>
      <script src="http://code.jquery.com/jquery-latest.js"></script>
    </head>
    <body>
    
    <p><button>Run</button></p>
    <div id='headerimage2' class="first"></div>
    <script>
        $("button").click(function() {
        $('#headerimage2').each(function(){
        for(i=1;i<5;i++){
            $(this).fadeOut(100).delay(500).fadeIn(100).delay(500);
           }
        });
        });
    </script>
    </body>
    </html>