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