Widget:Dialog-js: Unterschied zwischen den Versionen
Aus ZUM-Unterrichten
KKeine Bearbeitungszusammenfassung |
KKeine Bearbeitungszusammenfassung |
||
Zeile 15: | Zeile 15: | ||
elem.dataset.dialogOpenerAdded = 'true'; | elem.dataset.dialogOpenerAdded = 'true'; | ||
elem.addEventListener('click', (ev) => { | elem.addEventListener('click', (ev) => { | ||
dialog.showModal(); | |||
}); | |||
}); | |||
}; | |||
if (document.readyState === "loading") { | |||
document.addEventListener("DOMContentLoaded", run); | |||
} else { | |||
run(); | |||
} | |||
})(); | |||
</script><script type="text/javascript"> | |||
(function(){ | |||
const run = ()=>{ | |||
document.querySelectorAll('dialog.zum-dialog').forEach((elem) => { | |||
if(elem.dataset.dialogCloseonBackdropAdded === 'true') { return; } | |||
const dialog = document.getElementById(elem); | |||
elem.dataset.dialogCloseonBackdropAdded = 'true'; | |||
elem.addEventListener('mousedown', (ev) => { | |||
if(ev.target !== dialog){return true;} | |||
const rect = ev.target.getBoundingClientRect(); | |||
if(ev.x < rect.left || ev.x > rect.right) { return true; } | |||
if(ev.y < rect.top || ev.y > rect.bottom) { return true; } | |||
dialog.close(); | |||
dialog.showModal(); | dialog.showModal(); | ||
}); | }); |
Version vom 11. Februar 2024, 21:31 Uhr