这里哪里出现问题了吗

来源:1-21 编程练习

qq_庸人_13

2018-08-02 16:21:30

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>定时器</title>
    <style type="text/css">
        div{width:400px;height:120px;margin-top:50px;border:2px solid gray;padding:10px;}
    </style>
</head>
<body>
     <input type="button" value="删除">
     <input type="button" value="取消删除">
    <div>点击"删除"按钮后,里面的内容将在3秒钟后消失;<br/><br/>如点击了"删除"后又不想删除内容,请在点击"删除"按钮3秒之内点击"取消删除"按钮即可</div>
    <script type="text/javascript">
       //补充代码
       window.onload=function()
       {
           var btn1=document.getElementsByTagName("input")[0];
            var btn=document.getElementsByTagName("input")[1];
             var div=document.getElementsByTagName("div")[0];
             btn1.onclick=function()
             {
                 var time=function()
                 {
                     div.innerHTML="";
                 }
                 window.setTimeout(time,3000);
             }
             btn2.onclick=function()
             {
                 var clear=function()
                 {
                     clearTimeout(time);
                 }
             }
       }
    </script>
</body>
</html>

写回答

1回答

好帮手慕星星

2018-08-02

测试中的问题:

1、你获取第二个input之后,没有定义成btn2,定义的是btn,所以点击事件不成功

2、要把整个定时器赋值给变量,然后再清除整个变量,并不只是把定时器中的执行代码赋给变量哦。注意接收定时器的变量要做全局变量,这样清除定时器的时候才是成功的,清除定时器的时候直接清除就可以了,不需要用变量接收。

参考:

http://img.mukewang.com/climg/5b62da50000168ab08800438.jpg

自己测试下,祝学习愉快~~

0

0 学习 · 36712 问题

查看课程