不明白的地方有點多,希望前輩們、師哥師姐們能為我解惑,不勝感激!
<!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; ???} //?每隔100毫秒調用clock函數(shù),并將返回值賦值給i ?????var?i=window.setInterval("clock()",100); ????? </script> </head> <body> ??<form> ????<input?type="text"?id="clock"?size="50"??/> ????<input?type="button"?value="Stop"?onclick="var?inn=window.clearInterval(i)"??/> ??</form> </body> </html>
上面這段代碼運行是沒有問題的。
再來看一段代碼,僅修改了兩個地方,分別是第13行的:“①var inn=window.clearInterval(i);和第19行的:②<input type="button" value="Stop" onclick="inn" ?/>
”
<!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; ???} //?每隔100毫秒調用clock函數(shù),并將返回值賦值給i ?????var?i=window.setInterval("clock()",100); ?????var?inn=window.clearInterval(i); </script> </head> <body> ??<form> ????<input?type="text"?id="clock"?size="50"??/> ????<input?type="button"?value="Stop"?onclick="inn"??/> ??</form> </body> </html>
上面這段代碼就不能正常運行了,實在不知道為什么不能這么來用,當然還有一種可能我有寫錯的地方,但是我不認為這個可能性很大,因為我只改了上面提到的兩處地方。
再來看一段代碼:
<!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; ???}//?每隔100毫秒調用clock函數(shù),并將返回值賦值給i ?????var?i=setInterval("clock()",100); </script> </head> <body> ??<form> ????<input?type="text"?id="clock"?size="50"??/> ????<input?type="button"?value="Stop"?onclick="clearInterval(i)"??/> ??</form> </body> </html>
這段代碼倒是可以運行,不過我有不理解的地方:onclick="clearInterval(i)"中的clearInterval()應該是對象的一種方法,為什么不用添加上window.也能用。
window.clearInterval(i)
?希望前輩們不吝賜教,在下感激不盡!
2015-04-27
這個在新的標準中,是不用寫也可以的 。因為默認會這么調用的
2015-05-04
var?i=window.setInterval("clock()",100);
var?inn=window.clearInterval(i);
這兩個同時存在的話,剛生成i就被清掉了,所以頁面上不顯示了