javascript - 请问w3c里面这个js案例,我用window.onload来写怎么点击结束按钮之后,再点击开始,从0计数
问题描述
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title> <script> window.onload = function() { var a = 0; obtn1 = document.getElementById('btn1'); obtn2 = document.getElementById('btn2'); obtn1.onclick = function() {setTimeout(function rec() { document.getElementById('txt').value = a; a = a + 1; x = setTimeout(rec, 1000)}, 1000) } obtn2.onclick = function() {var b = 0;setTimeout(document.getElementById(’txt’).value=0, 0); clearTimeout(x);} } </script></head><body> <input type='text' name='text' /> <input type='button' value='开始计时!' /> <input type='button' value='结束计时!' /></body></html>
这是我自己学着写的,请问哪里出问题了,点击结束之后,是接着原来的数字计数的,我希望再点击开始的时候,从0开始。
问题解答
回答1:obtn2.onclick = function() {a = 0; //需要重新重置开始数字document.getElementById(’txt’).value=0; clearTimeout(x);} }回答2:
点击结束重加载一下页面啊!
回答3:window.onload=function(){ var a = 0;
obtn1 = document.getElementById('btn1');obtn2 = document.getElementById('btn2');txt=document.getElementById(’txt’);obtn1.onclick=function(){txt.value=++a;}obtn2.onclick=function(){a=0;txt.value=a;}
}
回答4:把var a = 0;放到obtn1.onclick这个函数里声明就好了
