web-dev-qa-db-ja.com

jquery $ .each()を動的に終了する方法?

私はajaxを介して取得し、jquery $ .each()を使用している画像のリストを持っています。画像をループし、1秒間隔で画像を次々に表示します。ユーザーが停止ボタンをクリックできるようにして、ユーザーが必要に応じて特定の画像で停止できるようにしたいと考えています。したがって、ユーザーが停止ボタンをクリックしたときに$ .each()を動的に終了する必要があります。できますか?

27
peter

_return false_を使用して、each()ループから早期に抜け出すことができます。

例:

_<script>
    $("button").click(function () {
      $("div").each(function (index, domEle) {
        // domEle == this
        $(domEle).css("backgroundColor", "yellow"); 
        if ($(this).is("#stop")) {
          $("span").text("Stopped at div index #" + index);
          return false;
        }
      });
    });

</script>
_

ソースhttp://api.jquery.com/each/

55
Adeel

each()ループから抜け出すには、次のようにします。

return false;

したがって、ボタンをクリックすると変数が設定され、各ループが各パスをチェックし、変数が設定されるとfalseを返します。

http://api.jquery.com/each/

13
user113716

http://api.jquery.com/each/

Falseを返すことで、コールバック関数内からループを停止できます。

4
Anpher
return(false);

それを行う必要があります。

3
jAndy