关于执行函数

<script type="text/javascript">

  var num=0;

  var i;

  function startCount(){

    document.getElementById('count').value=num;

    num=num+1;

    i=setTimeout("startCount()",1000);

  }

  function stopCount(){

  clearTimeout(i)


  }

  function qingl(){

     document.getElementById('count').value=0;

        clearTimeout(i)

  }

</script>

</head>

<body>

  <form>

    <input type="text" id="count" />

    <input type="button" value="Start"  onClick="startCount()"/>

    <input type="button" value="Stop"   onClick="stopCount()"/>

     <input type="button" value="清0"   onClick="qingl()"/>

问题1:如何做到点击一次时setTimeout函数只生效1次,而不是每次点击按钮就调用一次函数,使得它叠加:

问题2: clearTimeout函数如何做到真正意义上的停止,而不是消除setTimeout函数的1次影响

问题3:关于清0,如果直接赋予文本框一个值。上面的setTimeout函数依然会继续执行,如何做到清0的同时消除所以函数对文本框的影响?

求各位大神解答:小弟初学,很多细节不太清楚

朝花bu夕拾
浏览 1237回答 1
1回答

qyy2499760117_叶子

问题1:如何做到点击一次时setTimeout函数只生效1次,而不是每次点击按钮就调用一次函数,使得它叠加:定义一个变量,大于1就不执行问题2: clearTimeout函数如何做到真正意义上的停止,而不是消除setTimeout函数的1次影响break问题3:关于清0,如果直接赋予文本框一个值。上面的setTimeout函数依然会继续执行,如何做到清0的同时消除所以函数让变量直接等于0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript