问答详情
源自:8-4 取消计时器clearInterval()

为什么clearInterval()只能在页面刷新的第一次有效果?

var i=setInterval(clock,100);也是在function外声明的啊。代码截图有误,ti就是i,没删干净,修改过来也是只有在页面刷新后的第一次能清除setInterval效果。

提问者:慕粉3190350 2016-04-28 19:42

个回答

  • doits
    2016-05-13 00:24:16

    问题很简单,

    var i=setInterval(clock,100); 

       function startTimer(){

           var ti=setInterval(clock,100);

    你这两个函数的命名要一致,你点开始的时候执行的是最后那段,你要是点结束,你只能结束一次,因为你只能结束自动运行的那段,不知道你听明白没有,弄不明白再来找我

  • 仁太
    2016-04-29 10:12:09

    代码没问题的  你用平台就知道了 这个问题应该是慕课网的机制问题  缓存之类的吧  刷新就好了因为刷新会重置  所以好使  有时候光设置移除也没反应  就要刷新才会好

  • sun水
    2016-04-28 22:39:45

    传个参数进去试试

  • 慕粉3244475
    2016-04-28 22:18:17

    clearInterval() 方法的参数必须是由 setInterval() 返回的 ID 值。

  • 慕粉3244475
    2016-04-28 22:15:07

    var ti=setInterval(clock,100);改成 i=setInterval(clock,100);试试

  • 慕姐8482844
    2016-04-28 21:21:48

    语法:

    setInterval(代码,交互时间);

    参数说明:

    1. 代码:要调用的函数或要执行的代码串。

    2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

    setInterval(“方法名”,时间);

  • 慕姐8482844
    2016-04-28 21:14:21

    我建议你onclick="clearInterval(ti) 创建一个方法 再调用方法