javascript - 捕获 setTimeout 的滴答

标签 javascript

是否有可能在 setTimeout 中捕获每一秒的滴答声。假设我需要在 5 秒后注销用户并显示一条消息,例如在 div 中说“您将在 5 秒内注销”。然后是 4,3,2,1 并在 timeOut

后注销

例如:

setTimeout(function(){
     $("#myDiv").text("you will be logged out in " + n + " seconds");
     //"n" being tick of each second.
},5000)

我在互联网上搜索过此问题,但无处可寻。或者任何可以用 setInterval 为这个场景做的事情也是这里的好点。对此有什么想法或建议吗?

最佳答案

那么你可以使用 setInterval结合clearInterval方法:

var n = 5;
var timeoutID = window.setInterval(function() {
    // this callback will execute every second until we call
    // the clearInterval method
    $('#myDiv').text('you will be logged out in ' + n + ' seconds');
    n--;
    if (n === 0) {
        // TODO: go ahead and really log the dude out

        window.clearInterval(timeoutID);
    }
}, 1000);

关于javascript - 捕获 setTimeout 的滴答,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32159482/

相关文章:

javascript - 火车效果与jQuery ui 幻灯片效果

JavaScript:使用正则表达式提取其他字符之间的字符

javascript - 在调整窗口大小时调整相对于中心的滚动位置?

javascript - 是否有可能通过 0 度转换 :rotate(Xdeg)? 获得平滑的 CSS 过渡

javascript - 不使用 lodash 差异删除重复项

javascript - 多个 YouTube 视频嵌入自动播放序列

javascript - 使用 JQuery 将 JSON 数组数据的选择打印到页面

javascript - 反对在 JavaScript 代码块中包含服务器端脚本的论点是什么?

javascript (jQuery) 在 IE6 中不工作

Windows Phone 7.5 中的 JavaScript 拖放