alert中斷settimeout計時功能
更新時間:2013年07月26日 17:54:26 作者:
在測試過程中發(fā)現(xiàn)alert會中斷settimeout的計時功能,關(guān)閉對話框后,settimeout的時間會重頭開始計時,而不是從中斷處,感興趣的朋友可以了解下
經(jīng)過測試發(fā)現(xiàn)alert會中斷settimeout的計時功能,關(guān)閉對話框后,settimeout的時間會重頭開始計時,而不是從中斷處。
比如:settimeout定時5分鐘后執(zhí)行某方法,但是在等待3分鐘后,彈出了alert,關(guān)閉alert后,settimeout會重頭開始計時,再等5分鐘,而不是2分鐘。
并且只要是同一瀏覽器窗口內(nèi),即使在不同frame中,alert也會中斷其他frame中的settimeout,
為什么這么設(shè)計,不明白,是因為javascript是單線程的嗎?
這是在ie瀏覽器中的發(fā)現(xiàn),其他對話框和彈出框我沒有測試過。
真希望html5快些普及,這樣需要多線程的功能也就能解決了。
比如:settimeout定時5分鐘后執(zhí)行某方法,但是在等待3分鐘后,彈出了alert,關(guān)閉alert后,settimeout會重頭開始計時,再等5分鐘,而不是2分鐘。
并且只要是同一瀏覽器窗口內(nèi),即使在不同frame中,alert也會中斷其他frame中的settimeout,
為什么這么設(shè)計,不明白,是因為javascript是單線程的嗎?
這是在ie瀏覽器中的發(fā)現(xiàn),其他對話框和彈出框我沒有測試過。
真希望html5快些普及,這樣需要多線程的功能也就能解決了。
相關(guān)文章
JavaScript是如何實現(xiàn)繼承的(六種方式)
大多OO語言都支持兩種繼承方式: 接口繼承和實現(xiàn)繼承 ,而ECMAScript中無法實現(xiàn)接口繼承,ECMAScript只支持實現(xiàn)繼承,而且其實現(xiàn)繼承主要是依靠原型鏈來實現(xiàn),下文給大家技術(shù)js實現(xiàn)繼承的六種方式,需要的朋友參考下2016-03-03
JavaScript中SetInterval與setTimeout的用法詳解
在寫H5游戲時經(jīng)常需要使用定時刷新頁面實現(xiàn)動畫效果,比較常用即setTimeout()以及setInterval(),但是大家對SetInterval與setTimeout的用法了解嗎,下面通過本文給大家詳解js中SetInterval與setTimeout的用法,需要的朋友參考下2015-11-11
JavaScript函數(shù)的一些注意要點小結(jié)及js匿名函數(shù)
本文給大家總結(jié)了javascript函數(shù)的一些注意要點及js匿名函數(shù),主要知識點有:函數(shù)的基本語法、函數(shù)的參數(shù)、函數(shù)的重載相關(guān)知識,對本文感興趣的朋友一起學習吧2015-11-11

