JavaScript计时事件

JavaScript计时事件

概念:设定一个时间间隔之后来执行代码,而不是在函数被调用后立即执
行。
主要有两个关键方法:
setInterval()-间隔指定的毫秒数不停地执行指定的代码。
setTimeout()-暂停指定的毫秒数后执行指定的代码。
它们都是HTML DOM Window对象的两个方法


(1)setInterval()的使用
 语法格式:

 setInterval("函数(function)",间隔时间毫秒数);

实例1:<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<p>点击按钮,3秒钟弹出对话框</p>
<p>之后每隔3秒自动弹出对话框</p>
<button οnclick="myFunction()">点击开始</button>
<script>
function myFunction(){
    setInterval(function(){alert("你好")},3000);
}
</script>
</body>
</html>


实例2:显示当前时间
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<p>在页面上显示时钟</p>
<p id="demo"></p>
<script>
    function myTime(){
        var d=new Date();//创建时间对象
        var t= d.toLocaleTimeString();//获取当地时间
        document.getElementById("demo").innerHTML=t;
    }
    var time=setInterval(function(){myTime()},1000);
</script>
</body>
</html>


若要停止执行:
clearInterval()方法用于停止setInterval()方法执行的函数代码。
 要使用clearInterval()方法,在创建计数法时必须使用全局变量:
   比如:a=setInterval("函数(function)",间隔时间毫秒数);
  然后使用clearInterval() 方法来停止执行。

    
多说无益,下面我们用一个实例来理解:
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<p>在页面上显示时钟</p>
<p id="demo"></p>
<button οnclick="stopFunction()">点击停止</button>
<script>
    function myTime(){
        var d=new Date();//创建时间对象
        var t= d.toLocaleTimeString();//获取当地时间
        document.getElementById("demo").innerHTML=t;
    }
    var time=setInterval(function(){myTime()},1000);
    function stopFunction()//停止函数的方法,在上面onclick中调用
    {
        clearInterval(time);
    }
</script>
</body>
</html>

(2)setTimeout()方法
语法:
setTimeout("javascript 函数",毫秒数);
setTimeout() 的第一个参数是含有 JavaScript 语句的字符串。这个语句可能诸如 "alert('5 seconds!')",或者对函数的调用,诸如
alertMsg()"。第二个参数指示从当前起多少毫秒后执行第一个参数。

关键代码:
<button οnclick="myFunction()">点击开始</button>
<script>
function myFunction()
{
setTimeout(function(){alert("Hello")},3000);
}
</script>




停止该函数:
clearTimeout() 方法用于停止执行setTimeout()方法的函数代码。
要使用clearTimeout() 方法, 必须在创建超时方法中(setTimeout)使用全局变量:
比如:a=setInterval("函数(function)",间隔时间毫秒数);



关键代码:
<script>
var myVar;
function myFunction()
{
myVar=setTimeout(function(){alert("Hello")},3000);
}
function myStopFunction()//用于停止执行的函数
{
clearTimeout(myVar);
}
</script>



























评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值