Javascript 一键两用
当我按下按钮一次,我想开始计数,当我再次按下停止计数。我知道,要使用一个按钮onclick事件处理两个函数,它与“;”分开。有什么建议吗?这段代码可以很好地使用两个按钮,每个按钮对应一个函数。 提前谢谢Javascript 一键两用,javascript,function,onclick,Javascript,Function,Onclick,当我按下按钮一次,我想开始计数,当我再次按下停止计数。我知道,要使用一个按钮onclick事件处理两个函数,它与“;”分开。有什么建议吗?这段代码可以很好地使用两个按钮,每个按钮对应一个函数。 提前谢谢 <form> <input type="button" value="Start count!" onclick="doTimer();stopCount();" /> </form> 像这样的怎么样: onclick="handleClick();" 还
<form>
<input type="button" value="Start count!" onclick="doTimer();stopCount();" />
</form>
像这样的怎么样:
onclick="handleClick();"
还有你的JS:
function handleClick() {
if (timer_is_on) {
timer_is_on = false;
clearTimeout(t);
} else {
timer_is_on = true;
timedCount();
}
}
像这样的怎么样:
onclick="handleClick();"
还有你的JS:
function handleClick() {
if (timer_is_on) {
timer_is_on = false;
clearTimeout(t);
} else {
timer_is_on = true;
timedCount();
}
}
这将一个接一个地调用,这毫无意义
使用单个函数,检查标志的值,然后执行相应的操作。这将立即调用一个接一个的函数,这没有意义
使用单个函数,检查标志的值,并执行适当的操作。以下是我未经测试的解决方案,其中包含一些技巧,以供参考 首先,我认为您可能可以去掉
和
标记
其次,您可能会发现为变量指定有意义的名称很有帮助,而不仅仅是c
或t
第三,将计时器设置为布尔值:var timer\u is\u on=false代码>
第四,将按钮更改为:
第五,用以下代码替换您的代码:
function doTimer(){
if( timer_is_on ){
// Code to start the timer
// and any other code you want
timer_is_on = false;
}else{
// Code to stop the timer
// and any other code you want
timer_is_on = true;
}
}
这是我未经测试的解决方案,其中包含一些技巧
首先,我认为您可能可以去掉
和
标记
其次,您可能会发现为变量指定有意义的名称很有帮助,而不仅仅是c
或t
第三,将计时器设置为布尔值:var timer\u is\u on=false代码>
第四,将按钮更改为:
第五,用以下代码替换您的代码:
function doTimer(){
if( timer_is_on ){
// Code to start the timer
// and any other code you want
timer_is_on = false;
}else{
// Code to stop the timer
// and any other code you want
timer_is_on = true;
}
}
谢谢你的回答!我现在进行更改,当我按两次按钮时,我从不停止。为什么?最后一个“)”是不必要的。谢谢你的回答!我现在进行更改,当我按两次按钮时,我从不停止。为什么?最后一个“)”也是不必要的。谢谢你。你帮我做些改变!另外,在将来缩进你的代码,这将使你的生活更轻松。你帮我做些改变!此外,在将来缩进您的代码,这将使您的生活更轻松