Javascript clearInterval 不会停止 setInterval [英] Javascript clearInterval does not stop setInterval

查看:45
本文介绍了Javascript clearInterval 不会停止 setInterval的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 javascript 代码,它使用 setInterval 函数每 6 秒显示一些消息,如下所示:

I have a javascript code that shows some messages every 6 seconds using setInterval function as bellow:

$(function () {
    count = 0;
    wordsArray = ["<h1>Offer received</h1>", "<h1>Offer reviewed</h1>", "<h1>Decision pending</h1>", "Offer accepted.</h1>"];

    setInterval(function () {
        $(".lead").fadeOut(400, function () {
            $(this).html(wordsArray[count % wordsArray.length]).fadeIn(400);
        });
        if(count === 3){
            clearInterval(window.location.href = "www.mydomain.com");
        }
        count++;
    }, 6000);
});

当显示最后一条消息时,我想重定向到一个 URL,所以我检查了计数器并在显示最后一条消息时放置了一个 clearInterval,但是在显示最后一条消息后它不会立即转到该 url,而是 geos 回到第一个然后重定向,听起来像是继续循环.请问我该如何解决?

When the last message is displayed I want to redirect to a URL so I checked the counter and placed a clearInterval when the last message is displayed however it does not go to the url right after the last massage is displayed but geos back to the first one and then redirect, sounds like it continues to loop. How can I fix that please?

谢谢

推荐答案

setInterval 返回一个区间 id,你需要使用它来停止特定的区间.

An interval id is returned by setInterval , you need to use that to stop particular interval.

$(function() {
  count = 0;
  wordsArray = ["<h1>Offer received</h1>", "<h1>Offer reviewed</h1>", "<h1>Decision pending</h1>", "<h1>Offer accepted.</h1>"];

  var intervalTimer = setInterval(function() {
    $(".lead").fadeOut(400, function() {
      $(this).html(wordsArray[count % wordsArray.length]).fadeIn(400);
    });
    if (count === 3) {
      clearInterval(intervalTimer);
    }
    count++;
  }, 6000);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="lead"></div>

这篇关于Javascript clearInterval 不会停止 setInterval的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆