第1章 第246节 bom window clearTimeout

推荐给朋友

Window clearTimeout() 方法

实例

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

var myVar;

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

function myStopFunction() {
    clearTimeout(myVar);
}

尝试一下

定义和用法

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

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

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

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

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

浏览器支持

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

方法 Chrome Edge Firefox Safari Opera
clearTimeout() 1.0 4.0 1.0 1.0 4.0

语法

clearTimeout(id_of_settimeout)
参数 描述
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() 方法