计时器没有清除干净?

我做了一个倒计时计时器,达到的效果是点击元素,触发计时器,倒计时5秒后,清除计时器。再次点击,再次触发计时器(这一步还没有测试),问题在上一步——清除计时器后,计时器仍然还是运作,代码如下:
var time=5;//初始化倒计时秒数

var timer;//定义计时器yanz.onclick=function(){    var timer=window.setInterval("daoshu()",1000);//触发}function daoshu(){
    yanz.style.fontSize="12px";
    yanz.innerHTML="短信已發送,"+time+"s內有效";
    time--;//倒计时
    if(time<=0){//计时完毕
        Stop();//清除计时器
        yanz.style.fontSize="18px";
        yanz.innerHTML="點擊獲取短信驗證碼";
    }    console.log(time);//这里能看出,该计时器并未被清除,任然在运作}function Stop(){    
    window.clearInterval(timer);//清除计时器}
大神指点一下,问题出在哪里了?


慕沐林林
浏览 874回答 1
1回答

慕姐8265434

var&nbsp;timer;//定义计时器yanz.onclick=function(){&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;timer=window.setInterval("daoshu()",1000);//错误就在这里,你又定义了一次timer}倒计时参考代码<html><head> &nbsp;&nbsp;&nbsp;&nbsp;<meta&nbsp;charset="utf-8"> &nbsp;&nbsp;&nbsp;&nbsp;<script&nbsp;type="text/javascript"&nbsp;src="jquery-2.1.4.min.js"></script> &nbsp;&nbsp;&nbsp;&nbsp;<title>test</title></head><body> &nbsp;&nbsp;&nbsp;&nbsp;<a&nbsp;id="jwtest"&nbsp;href="javascript:;">重新发送</a></body><script&nbsp;type="text/javascript">$(function(){ &nbsp;&nbsp;&nbsp;&nbsp;$("#jwtest").click(function(){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;time($(this)); &nbsp;&nbsp;&nbsp;&nbsp;}); });var&nbsp;wait=60;function&nbsp;time(o)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(wait&nbsp;==&nbsp;0)&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;o.html("重新发送"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wait&nbsp;=&nbsp;60; &nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;o.html("重新发送("+wait+")"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wait--;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setTimeout(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;time(o); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1000); &nbsp;&nbsp;&nbsp;&nbsp;}&nbsp; }</script></html>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript