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

求大神帮我看看这个代码出什么问题了(添加stop和start按钮控制计时开始和结束)

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>定时器</title>
<script type="text/javascript">
  var attime;
  function clock(){
      
    var time=new Date();          
    attime=time.getHours()+":"+time.getMinutes()+":"+time.getSeconds() ;
    document.getElementById("clock").value = attime;
  }
  function startclock(){
      var i=setInterval("clock()",1000);
  }
  function stopclock(){
     clearInterval(i);
  }
</script>
</head>
<body>
<form>
<input type="text" id="clock" size="50"  />
<input type="button" id="start" value="start" onclick="startclock()" />
<input type="button" id="stop" value="stop"  onclick="stopclock()"/>
</form>
</body>
</html>

start可以开始但是stop停止不了为啥啊--

正在回答

2 回答

把 var i=setInterval("clock()",1000);中的var去掉

0 回复 有任何疑惑可以回复我~
#1

sololdw 提问者

真的可以哎,为啥啊求教。。
2015-05-16 回复 有任何疑惑可以回复我~
#2

sololdw 提问者

是不是函数里不能定义变量
2015-05-16 回复 有任何疑惑可以回复我~
#3

hentai_w_w 回复 sololdw 提问者

可能是一个全局变量和局部变量的原因吧,在其他语言像是C语言,在函数内部定义变量就只能在函数内部使用,在函数外部不能使用,不知道JS是不是也是这样
2015-05-20 回复 有任何疑惑可以回复我~

函数变量作用域的问题啊,那个i的作用域范围在startclock函数内,你想在stopclock函数里去访问i,这样肯定访问不到啊!

1 回复 有任何疑惑可以回复我~
#1

sololdw 提问者

是的谢谢
2015-07-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

求大神帮我看看这个代码出什么问题了(添加stop和start按钮控制计时开始和结束)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信