ナビゲート時にポップアップするシンプルな読み込みスピナーを作成しようとしています。ナビゲートするときに「beforeunload」イベントを使用して表示され、完了したら「load」イベントを使用して再び非表示にします。
問題は、ページをスマートフォンのバックグラウンドに数時間置いたままにすると、「beforeunload」イベントがトリガーされ、スピナーが表示されることです。おそらく、Android上のChromeがメモリを節約するためにページを部分的にアンロードしているためです。スピナーはそれ自体で消えることはありませんし、エレガントな方法でスピナーを再び消す方法を理解できていないようです。
代わりに使用すべき他のイベントはありますか?
window.addEventListener("load", function() {
topSpinner.classList.add("closed");
});
window.addEventListener("beforeunload", function() {
topSpinner.classList.remove("closed");
});