1

为了简单起见,假设我希望网站的标题每秒递增1一次,从0. 我知道如何使用 JavaScript 来做到这一点setInterval——它相当简单。但是,一旦我切换到新选项卡,设置间隔似乎基本上停止工作。我看到网站在不关注时会进行这种类型的定期更新,所以我知道这是可能的。我尝试查看他们的源代码,但无法弄清楚任何事情。那么,如何做到这一点呢?

4

1 回答 1

-1

好吧,它应该通过每经过一秒钟更新 DOM 元素来完成。

所以它可能是这样的。 FunctionOne(){ setInterval(function(){ var title = document.getElementByTagName('title'); var TimesChanging = "My number or variable"; for(var a = 0; a <= TimesChanging; a++) { title.innerHTML = "My title " + a; } return a; } ,1000)}

以这种方式,cicle 每秒都会将标题更新到由 TimesChanging 变量决定的次数。

对于不使用其他选项卡的问题,它可能取决于页面的焦点,您可能会这样说:

     <body onfocusout="myFunctionTwo(a)" onfocus="FunctionOne()">

     myFunctionTwo(a) {
     setInterval(
     function(){ 
        var title = document.getElementByTagName('title');
        for (a; a<= variable; a++){
         title.innerHTML = "My title " + a;
          }
       ,1000)};

通过这种方式将焦点从身体中移出,您将参数 a 传递给第二个函数,并以这种方式继续循环变量。

于 2019-02-02T17:11:38.577 回答