• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

javascript定时函数问题

如下代码,为什么点击开始按钮,然后点更改时间间隔按钮,这时再点停止按钮时就失效了。点开始后再点停止,就能正常停止。定时函数

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与2

定时器设置之后要清除,需要利用它返回的ID值,调用clearInterval()这个函数才可以清除定时器。在你的代码里,开始时timer存的是1000毫秒的定时器的ID,而当你更改为500毫秒的定时器时,timer存的是500毫秒定时器的ID值,这时候你没有办法再获开1000毫秒的定时器的ID值,清除的只有500毫秒的定时器。如果要达到想要的效果,可以将函数gai()改成这样:
functiongai(){clearInterval(timer);//此时timer的值还是1000毫秒定时器的ID值,先把它清除了timer=setInterval("t()",500);//再开启新的定时器,此时timer的值是500毫秒的定时器}

使用道具 举报

很简单,你点击了时间开始按钮timer = setInterval("t()",1000);开始跳动

然后你没有清除这个开始按钮创建的timer变量所指示的setInterval("t()",1000);定时器,就点击那个更改时间间隔按钮,又一次创建setInterval("t()",1000);定时器,并且把timer变量改成了第二次创建的,你的这种赋值法并不能清除掉你第一次点击开始创建的setInterval("t()",1000)定时器
所以当你点击停止的时候,那个第二次赋值给timer变量的定时器被清除掉了,但第一次的那个却没有清除
理解了的话,还请采纳

使用道具 举报

发新帖

发布任务需求已有1031166位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!