JavaScript取消setTimeout设置的定时操作|Window clearTimeout() 方法

Window 对象参考手册


定义与用法

clearTimeout() 方法可取消由 setTimeout() 方法设置的定时操作。

clearTimeout() 方法的参数必须是由 setTimeout() 返回的 ID 值。

提示: 要使用 clearTimeout() 方法, 在创建执行定时操作时要使用全局变量:

myVar = setTimeout("javascript function", milliseconds);

如果方法还未被执行,我们可以使用 clearTimeout() 来阻止它。


语法格式

clearTimeout(id_of_settimeout)


示例代码

阻止 setTimeout() 方法执行函数 :

var myVar;
 
function myFunction() {
    myVar = setTimeout(function(){ alert("Hello"); }, 3000);
}
 
function myStopFunction() {
    clearTimeout(myVar);
}

亲自试试


浏览器支持

方法Google ChromeInternet ExplorerFirefoxSafariOpera
clearTimeout()1.04.01.01.04.0

表格中的数字表示支持该属性的第一个浏览器版本号。


参数说明

参数描述
id_of_setinterval调用 setTimeout() 函数时所获得的返回值,使用该返回标识符作为参数,可以取消该 setTimeout() 所设定的定时执行操作。

技术细节

返回值:没有返回值。

更多示例


以下实例通过点击 “开始计数!” 按钮开始执行计数程序。点击 “停止计数!” 按钮停止后,可以再次点击点击 “开始计数!” 按钮会重新开始计数。

<button onclick="startCount()">开始计数!</button>
<input type="text" id="txt">
<button onclick="stopCount()">停止计数!</button>
<script>
    var c = 0;
    var t;
    var timer_is_on = 0;

    function timedCount() {
        document.getElementById("txt").value = c;
        c = c + 1;
        t = setTimeout(function() {
            timedCount()
        },
        1000);
    }

    function startCount() {
        if (!timer_is_on) {
            timer_is_on = 1;
            timedCount();
        }
    }

    function stopCount() {
        clearTimeout(t);
        timer_is_on = 0;
    }
</script>

亲自试试


相关页面

Window 对象: setInterval() 方法

Window 对象: setTimeout() 方法

Window 对象: clearInterval() 方法


Window 对象参考手册


相关