簡體   English   中英

JavaScript 函數 setTimeout() 和 setInterval() 有時不起作用

[英]JavaScript functions setTimeout() and setInterval() are sometimes not working

我自己的 Google Chrome 擴展在一段時間后停止工作,因為 setTimeout() 在某些情況下不起作用。

因此,在一些必要的延遲之后,后台腳本不會向內容腳本發送消息。

我通過編寫許多 console.log() 語句發現了這個問題。

作為一種解決方案,我考慮使用 setInterval() 直到將消息發送到內容腳本:

var timer = setInterval(function() {
  clearInterval(timer);
  // Sending a message to the content script
}, 3000);

我在 setInterval() 之前、期間和之后的代碼很長,所以我希望這段代碼足夠了。

有誰知道在哪些情況下這些超時或間隔不會啟動?

或者我可以使用任何類似的選項嗎?

我曾考慮過使用 Chrome 鬧鍾 API,但鬧鍾每分鍾只能使用一次,如果我沒記錯的話,最短延遲是一分鍾。

我從未遇到過任何 setinterval 或 settimeout 停止工作的問題。 我猜你的代碼可能有問題。 如果您確定該錯誤,您應該制作一個演示項目並在 github 上報告錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM