經過測試發現alert會中斷settimeout的計時功能,關閉對話框后,settimeout的時間會重頭開始計時,而不是從中斷處。
比如:settimeout定時5分鐘后執行某方法,但是在等待3分鐘后,彈出了alert,關閉alert后,settimeout會重頭開始計時,再等5分鐘,而不是2分鐘。
并且只要是同一瀏覽器窗口內,即使在不同frame中,alert也會中斷其他frame中的settimeout,
為什么這么設計,不明白,是因為javascript是單線程的嗎?
這是在ie瀏覽器中的發現,其他對話框和彈出框我沒有測試過。
真希望html5快些普及,這樣需要多線程的功能也就能解決了。
新聞熱點
疑難解答
圖片精選