如何暫停和恢復 setTimeout() 逾時?
您可以換行window.setTimeout 函數建立一個支援暫停和復原的自訂計時器。
<code class="javascript">var Timer = function(callback, delay) { var timerId, start, remaining = delay; this.pause = function() { window.clearTimeout(timerId); timerId = null; remaining -= Date.now() - start; }; this.resume = function() { if (timerId) { return; } start = Date.now(); timerId = window.setTimeout(callback, remaining); }; this.resume(); };</code>
如何取得目前超時的剩餘時間?
你可以使用自訂計時器的剩餘屬性來取得目前逾時的剩餘時間。
<code class="javascript">var timer = new Timer(function() { alert("Done!"); }, 1000); console.log("Time remaining:", timer.remaining); // Output: 1000</code>
用法範例:
<code class="javascript">timer.pause(); // Do some stuff... timer.resume();</code>
以上是如何在 JavaScript 中控制和追蹤超時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!