用setinterval在var达到一定值后执行操作

Do something after var reaches certain value with setinterval?

本文关键字:执行 操作 setinterval var      更新时间:2023-09-26

我有一个引导加载栏,它每250ms更新一次setinterval,所以看起来它正在进步。当加载栏达到100%时,我试图显示警报并重定向。

<div class="progress" style="border-radius:0px;">
    <div class="progress-bar progress-bar-success progress-bar-striped active" 
         style="border-radius:0px;" id="loading" role="progressbar" aria-valuenow="75" 
         aria-valuemin="0" aria-valuemax="100" style="width: 0%">
   </div>
</div>

我尝试在函数结束前添加window.location,但它不起作用。我该怎么做?也许用if语句?

        var percentl = 10;
        setInterval(function () {
            percentl = percentl + 2;
            document.getElementById("loading").style.width = percentl + "%";
        }, 250);

您需要一个if语句来检查栏是否已满,如果已满,则清除间隔,显示警报,最后进行重定向。

有用功能:

  • clearInterval
  • 窗口位置

您可以使用clearInterval停止计时器,添加if语句来检查%是否已达到100,并添加location.href来重定向URL。

var percentl = 10;
var timer = setInterval(function () {
              percentl = percentl + 2;
              document.getElementById("loading").style.width = percentl + "%";
              if(percentl > 99){
                clearInterval(timer);
                // do your stuff
                location.href = "redirectToThisURL";
              }              
            }, 250);