JavaScript定时器的相关操作

定时器的使用

setTimeout(‘操作’,毫秒)函数的操作

传入的两个参数为:第一个为操作,第二个为时间,单位为毫秒
功能实现:
5s后切换另一张图片
代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<html>
<head>
    <title>我的第一个网站</title>
</head>
<script type="text/javascript">
    function bom(){
        //得到节点
        var img=document.getElementsByTagName('img')[0];
        img.src="./second.png";
    }
    window.setTimeout('bom()',5000);
</script>
<body>
    <h1>定时器的操作</h1>
    <input type ="button" value="5"/> <br>
    <img src="./first.png" alt="">
</body>
</html>

其中first.png 和second.png这两张图片放在与html文件同目录下

setInterval(‘操作’,毫秒)函数的操作

介绍:
setInterval()函数传入的参数与setTimeout()函数相同,但是setInterval()函数是每隔多少秒执行一个操作,setTimeout()指的是隔多少秒进行一个操作,setInterval()是循环执行的,setTimeout()只执行一次
实例代码功能:
5s后切换图片,并且有倒计时

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<html>
<head>
    <title>我的第一个网站</title>
</head>
<script type="text/javascript">
    function bom(){
        //得到节点
        var img=document.getElementsByTagName('img')[0];
        var ipt = document.getElementsByName('time')[0];
        var time=parseInt(ipt.value)-1;
        ipt.value=time;
        if(time==0){
            img.src="./second.png";
        }

    }
    window.setInterval('bom()',1000);
</script>
<body>
    <h1>定时器的操作</h1>
    <input type ="button" name = 'time' value="5"/> <br>
    <img src="./first.png" alt="">
</body>
</html>

定时器的清除

clearXXXXX()函数的使用

clear方法可以清除存在的计时器,不同的计时器调用清除方法名不同,但功能一致
setTimeout()方法使用clearTimeout()方法清除
setInterval()方法使用clearInterval()方法清除
代码如下:
5s后计时器变成0后不再往负数递减

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<html>
<head>
    <title>我的第一个网站</title>
</head>
<script type="text/javascript">
    function bom(){
        //得到节点
        var img=document.getElementsByTagName('img')[0];
        var ipt = document.getElementsByName('time')[0];
        var time=parseInt(ipt.value)-1;
        ipt.value=time;
        if(time==0){
            img.src="./second.png";
            clearInterval(clock);
        }

    }
    var clock = window.setInterval('bom()',1000);
</script>
<body>
    <h1>清除定时器的操作</h1>
    <input type ="button" name = 'time' value="5"/> <br>
    <img src="./first.png" alt="">
</body>
</html>

setTimeout定时器实现循环使用

setTimeout计时器只能执行一次操作,这里我们将使用setTimeout计时器实现循环计时
代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<html>
<head>
    <title>我的第一个网站</title>
</head>
<script type="text/javascript">
    function bom(){
        //得到节点
        var img=document.getElementsByTagName('img')[0];
        var ipt = document.getElementsByName('time')[0];
        var time=parseInt(ipt.value)-1;
        ipt.value=time;
        if(time==0){
            img.src="./second.png";
            clearTimeout(clock);
        }
        else{
            window.setTimeout('bom()',1000)
        }

    }
    var clock = window.setTimeout('bom()',1000);
</script>
<body>
    <h1>循环定时器的操作</h1>
    <input type ="button" name = 'time' value="5"/> <br>
    <img src="./first.png" alt="">
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值