计时器没有清除干净?
生活随笔
收集整理的這篇文章主要介紹了
计时器没有清除干净?
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
這是的timer永遠(yuǎn)是個(gè)局部變量,stop里面清除的是全局的timer,然后全局的timer始終是null,在跑的始終是局部的timer,所以你應(yīng)該知道錯(cuò)誤在哪了
因?yàn)樵谶@個(gè)匿名函數(shù)里面又重新申明了一個(gè)變量,所以window對(duì)象下的timer是null,onlcick里面的timer匿名函數(shù)內(nèi)部的一個(gè)變量,兩個(gè)不在共同層級(jí),所以你要去掉var
倒計(jì)時(shí)參考代碼
var timer;//定義計(jì)時(shí)器yanz.onclick=function(){ var timer=window.setInterval("daoshu()",1000);//觸發(fā)}timer定義了兩次
此外,建議題主在設(shè)置timer之前先把timer清掉,防止二次點(diǎn)擊,產(chǎn)生加速的情況
用法
因?yàn)樵谶@個(gè)匿名函數(shù)里面又重新申明了一個(gè)變量,所以window對(duì)象下的timer是null,onlcick里面的timer匿名函數(shù)內(nèi)部的一個(gè)變量,兩個(gè)不在共同層級(jí),所以你要去掉var
倒計(jì)時(shí)參考代碼
var timer;//定義計(jì)時(shí)器yanz.onclick=function(){ var timer=window.setInterval("daoshu()",1000);//觸發(fā)}timer定義了兩次
此外,建議題主在設(shè)置timer之前先把timer清掉,防止二次點(diǎn)擊,產(chǎn)生加速的情況
用法
總結(jié)
以上是生活随笔為你收集整理的计时器没有清除干净?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。