我想用Javascript做一个计时器
这是我在onLoad()事件里面的代码
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
document.myfrm.time.value = hour+":"+minute+":"+second;
setTimeout("timer()",1000);
现在我在页面添加了一个按钮
我想在点下按钮的时候让时间停止
再点下又继续
怎样才能做出这样的效果?
求高人指点......
这是我在onLoad()事件里面的代码
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
document.myfrm.time.value = hour+":"+minute+":"+second;
setTimeout("timer()",1000);
现在我在页面添加了一个按钮
我想在点下按钮的时候让时间停止
再点下又继续
怎样才能做出这样的效果?
求高人指点......
function show(){
if(t){clearTimeout(t);return}
t=setTimeout("timer()",1000);
}
<input value="add" type="button" onclick="show()"/>
不过你这个需求可能用 setInterval和clearInterval合适
这样的吧?
<form name="myfrm">
<input type="text" name="time" />
<input type="button" onclick="clearInterval(t)" value="停止" />
<input type="button" onclick="t = setInterval('timer()',1000)" value="开始" />
</form>
<script>
function timer(){
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
document.myfrm.time.value = hour+":"+minute+":"+second;
}
var t = setInterval("timer()",1000);
</script>
<input type="text" name="time" />
<input value="add" type="button" onclick="show()"/>
</form>
<script>
function timer(){
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
document.myfrm.time.value = hour+":"+minute+":"+second;
}
var t;
function show(){
if(t){clearInterval(t);return}
t = setInterval("timer()",1000);
}
t = setInterval("timer()",1000);
</script>
<input type="text" name="time" />
<input value="add" type="button" onclick="show()"/>
</form>
<script>
var t;
var flag=false;
function timer(){
flag=true;
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
document.myfrm.time.value = hour+":"+minute+":"+second;
}
function show(){
if(flag){clearInterval(t);flag=false;return}
t = setInterval("timer()",1000);}
t = setInterval("timer()",1000);
</script>