21 lines
706 B
HTML
21 lines
706 B
HTML
<!DOCTYPE html>
|
|
<html class="test-wait">
|
|
<meta charset="utf-8">
|
|
<iframe id="id_0"></iframe>
|
|
<script>
|
|
/** @param {HTMLIFrameElement} iframe */
|
|
function waitForLoad(iframe) {
|
|
// iframe is initialized immediately on Chrome while it needs some time on Firefox
|
|
if (iframe.contentDocument.readyState === "complete") {
|
|
return;
|
|
}
|
|
return new Promise(r => iframe.onload = r);
|
|
}
|
|
|
|
const iframe = document.getElementById("id_0");
|
|
iframe.contentWindow.navigator.locks.request("weblock_0", async () => {
|
|
await waitForLoad(iframe);
|
|
document.body.append(iframe); // discards the document and destroys locks
|
|
document.documentElement.classList.remove("test-wait");
|
|
});
|
|
</script>
|