为了账号安全,请及时绑定邮箱和手机立即绑定

点击执行以后,文本框里面的数一直跳动,不是点一次就动一次。怎么回事呀?

点击执行以后,文本框里面的数一直跳动,不是点一次就动一次。怎么回事呀?

慕前端0798377 2018-08-13 10:01:54
<!DOCTYPE HTML><html>    <head>        <script>            var num=0;            function abb(){                document.getElementById('con').value=num;                num=num+1;                setTimeout("abb()",2000);            }            </script>        </head>        <body>            <input type ="text" id="con"  />            <input type ="button" value="点击计数" onclick="abb()" />            </body>    </html>
查看完整描述

4 回答

已采纳
?
业余奶茶品鉴师

TA贡献260条经验 获得超388个赞

setTimeout("abb()",2000);这行代码的意思是倒计时2秒,再执行一次abb()方法,所以点一次按钮,手动触发一次abb(),2秒后又自动触发一次abb(),所以num会一直跳。去掉这行代码就好了。

查看完整回答
4 反对 回复 2018-08-13
?
朝起蓬勃

TA贡献4条经验 获得超0个赞

setTimeout("abb()",2000);定时器。2s调用一次abb()方法,

查看完整回答
反对 回复 2018-08-14
?
吾知后世

TA贡献1条经验 获得超0个赞

<html>

<body>


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

<script language=javascript>

var int=self.setInterval("clock()",50)

function clock()

  {

  var t=new Date()

  document.getElementById("clock").value=t

  }

</script>

<button onclick="int=window.clearInterval(int)">Stop interval</button>

<button onclick="int=window.setInterval('clock()',50)">Stop interval</button>


</body>

</html>


查看完整回答
反对 回复 2018-08-13
?
慕勒0069038

TA贡献143条经验 获得超39个赞

问题在于  setTimeout("abb()",2000); 你隔2S后又调用了一次abb方法 ,这样做等于 自身隔2S 调用一次自身 ,无限循环,当然不停的跳

查看完整回答
1 反对 回复 2018-08-13
  • 4 回答
  • 0 关注
  • 1607 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信