13 lines
457 B
JavaScript
13 lines
457 B
JavaScript
/** Запуск после load; внутри — requestIdleCallback или короткий timeout. */
|
|
export function runAfterInitialLoad(fn) {
|
|
const run = () => {
|
|
if (typeof requestIdleCallback === "function") {
|
|
requestIdleCallback(() => fn(), { timeout: 2500 });
|
|
} else {
|
|
setTimeout(fn, 200);
|
|
}
|
|
};
|
|
if (document.readyState === "complete") run();
|
|
else window.addEventListener("load", run, { once: true });
|
|
}
|