每次单击按钮都会切换按钮的功能

时间:2014-01-18 10:35:03

标签: javascript timer

我正在尝试更改此处给出的代码:http://jsbin.com/iFesOvOs/1/edit,以便单个按钮可以启动和停止计时器。

如果计时器停止,它会在按下按钮后开始运行,如果它正在运行,它将被停止。

我需要这样做,因为我正在创建一个具有很多功能的移动网站,而我们没有空间来放置额外的按钮。

我尝试过:

  1. 我尝试更改按钮的某些属性,以便我们可以检测定时器是否正在运行并按此执行操作。

  2. 我已经尝试将计时器的状态存储在localStorage中,将其备份并按此执行操作。

  3. 我试过保留一个全局变量,但这也不起作用

  4. 有时,所需的函数根本没有执行(没有错误消息),有时,我得到了变量超出范围的错误消息 - 我试图通过使用全局变量来纠正,但只是徒劳无功

    这里有什么不对,有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:1)

这有效......

<input type="button" value="start" onclick="start(this);">


function start(b) {
  if (b.value == 'stop'){
    b.value = 'start'
    clearInterval(clocktimer);
    return    
  } 
  b.value = 'stop'
  clocktimer = setInterval("update()", 1);
  x.start();
}

答案 1 :(得分:0)

你可以在你的按钮中添加带名称(开始)的类,添加检查类按钮名称是否开始的函数然后启动三聚体并将按钮类名更改为停止,否则当类名停止时然后停止计时器并更改类名以开始。