Stop后,Start,再回来按Stop就不行了,怎么弄?

来源:8-4 取消计时器clearInterval()

Mr丶Jia

2017-01-03 18:54

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>计时器</title>

<script type="text/javascript">

   function clock(){

      var time=new Date();                

      document.getElementById("clock").value = time;

     

   }

    var i=setInterval("clock()",100);

   function za(){

     var j=setInterval("clock()",100);

   }

</script>

</head>

<body>

  <form>

    <input type="text" id="clock" size="50"  />

    <input type="button" value="Stop" 

    onclick="clearInterval(i)"/>

    <input type="button" value="Start" onclick="za()"/>

  </form>

</body>

</html>


写回答 关注

2回答

  • 在下坂本干哈玩意儿啊
    2017-01-03 19:23:30
    已采纳

    你定义的变量是局部变量,这样每次都会创建新的计时器,而你只关闭一个计时器,所以第二次会看似无效,我把代码改一下你看看吧

    <!DOCTYPE HTML>
    <html>
    
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    		<title>计时器</title>
    		<script type="text/javascript">
    			var i;
    			function clock() {
    				var time = new Date();
    				document.getElementById("clock").value = time;
    
    			}
    			i = setInterval("clock()", 100);
    
    			function za() {
    				i = setInterval("clock()", 100);
    			}
    		</script>
    	</head>
    
    	<body>
    		<form>
    			<input type="text" id="clock" size="50" />
    			<input type="button" value="Stop" onclick="clearInterval(i)" />
    			<input type="button" value="Start" onclick="za()" />
    		</form>
    	</body>
    
    </html>


    Mr丶Jia

    非常感谢!

    2017-01-04 09:26:10

    共 3 条回复 >

  • 大年糕
    2017-02-28 15:00:32

    你也解决了我的问题!! 再次感谢

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题