如何解决JavaScript中setinterval延迟一秒问题

当使用setinterval时,发现它刚打开页面时会延迟一秒过后在执行。因为setinterval定时器先执行了自己的一秒钟,执行过后在对里面的内容进行操作,这样就会导致不能立即显示出来

举个例子:先创建一个 div 盒子,然后写 script 代码:

var div = document.querySelector('div');
var num = 10;
setInterval(function() {
    if (num == 1) {
        div.innerHTML = null;
        return fn1;
    } else {
        num--;
        div.innerHTML = '还剩' + num + '秒';
    }
},
1000);

效果如图:

如何解决 JavaScript 中 setinterval 延迟一秒问题

它的会先执行那一秒钟,等一秒钟过了然后再执行里面显示的内容

解决办法:

直接调用

var div = document.querySelector('div');
var num = 11;
function fn1() {
    if (num == 1) {
        div.innerHTML = null;
        return fn1;
    } else {
        num--;
        div.innerHTML = '还剩' + num + '秒';
    }
}
setInterval(fn1, 1000);
fn1();

效果如下:

如何解决 JavaScript 中 setinterval 延迟一秒问题

「点点赞赏,手留余香」

1

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » 如何解决JavaScript中setinterval延迟一秒问题

发表回复