setTimeout() タイムアウトを一時停止および再開する方法
ラップできますwindow.setTimeout 関数を使用して、一時停止と再開をサポートするカスタム タイマーを作成します。
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();
};
現在のタイムアウトの残り時間を取得するにはどうすればよいですか?
カスタム タイマーの残りのプロパティを使用して、現在のタイムアウトの残り時間を取得できます。 .
var timer = new Timer(function() {
alert("Done!");
}, 1000);
console.log("Time remaining:", timer.remaining); // Output: 1000
使用例:
timer.pause();
// Do some stuff...
timer.resume();
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3