Fix "onload" events to support multiple

This commit is contained in:
Gabriel Augendre 2021-04-05 11:24:48 +02:00
parent 20b2da9cd0
commit 85a88000a7
2 changed files with 21 additions and 4 deletions

View file

@ -1,13 +1,22 @@
'use strict';
window.onload = function () {
function bindKey() {
const adminLinkElement = document.querySelector("a#admin-link");
if (adminLinkElement === undefined || adminLinkElement === null) {
return;
}
const adminLocation = adminLinkElement.href;
document.addEventListener("keydown", function(event) {
document.addEventListener("keydown", function (event) {
if (event.code === "KeyE") {
window.location = adminLocation;
}
})
}
((readyState) => {
if (readyState === "interactive") {
bindKey();
} else if (readyState === "loading") {
window.addEventListener("DOMContentLoaded", bindKey, false);
}
})(document.readyState);

View file

@ -1,11 +1,19 @@
let preview = null;
window.onload = function () {
function onLoad () {
const previewButton = document.querySelector("input#_live_preview");
if (previewButton) {
previewButton.addEventListener("click", openPreviewPopup);
}
};
}
((readyState) => {
if (readyState === "interactive") {
onLoad();
} else if (readyState === "loading") {
window.addEventListener("DOMContentLoaded", onLoad, false);
}
})(document.readyState);
window.onbeforeunload = function () {
if (preview !== null) {
preview.close();