渊渊
2015-05-09 16:06
我想设定一个计时器,可以让它按第一个键开始计时,按下第二个键结束,怎么实现呐?
我是着做了一下,但是只可以暂停一次,再按就不管用了。
<input type="button" value="Stop" onclick="clearInterval(i)" />
<input type="button" value="start" onclick="setInterval(clock,100)"
页面中添加一个<input type="hidden" class="J-hidval" value=" 0 ">
$(".J-btn").bind("click", function () {
if ($(".hidval").val() == 0) {
$(".hidval").val(1);
} else {
$(this).siblings(".hidval").val(0);
}
})
把你开始和暂停的方法放到空白处就可以了。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
<script type="text/javascript">
function clock(){
var time=new Date();
document.getElementById("clock").value = time;
}
var i=setInterval(clock,100);
function timeClock(x){
if(x==0){
i=setInterval(clock,100);
}else{
clearInterval(i);
}
}
</script>
</head>
<body>
<form>
<input type="text" id="clock" size="50" />
<input type="button" value="Stop" onclick="timeClock(1)"/>
<input type="button" value="Start" onclick="timeClock(0)"/>
</form>
</body>
</html>这样写也能实现,你可以参考下
不好意思没仔细看题,上面的代码是针对只有一个按钮的,第一次按下开始方法,第二次按下停止,再次按下又会开始,实现的原理是通过获取设定的<input type="hidden" class="J-hidval" value=" 0 ">的value值来判定执行什么程序。绑定点击事件后,当val=0时,便执行计时,同时改变val的值为1,当val=1时,便执行停止,同时把val还原为0,。
有两个btn分别控制的时候,原理同上面一样。
JavaScript进阶篇
469070 学习 · 22582 问题
相似问题