Widget:Dialog-js: Unterschied zwischen den Versionen

Aus ZUM-Unterrichten
KKeine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 20: Zeile 20:
   };
   };
if (document.readyState === "loading") {
if (document.readyState === "loading") {
   document.addEventListener("DOMContentLoaded", run);
   document.addEventListener("DOMContentLoaded", run);
} else {
} else {
Zeile 31: Zeile 30:
     document.querySelectorAll('dialog.zum-dialog').forEach((elem) => {
     document.querySelectorAll('dialog.zum-dialog').forEach((elem) => {
       if(elem.dataset.dialogCloseonBackdropAdded === 'true') { return; }
       if(elem.dataset.dialogCloseonBackdropAdded === 'true') { return; }
      const dialog = document.getElementById(elem);
       elem.dataset.dialogCloseonBackdropAdded = 'true';
       elem.dataset.dialogCloseonBackdropAdded = 'true';


Zeile 38: Zeile 35:


       elem.addEventListener('mousedown', (ev) => {
       elem.addEventListener('mousedown', (ev) => {
         if(ev.target !== dialog){return true;}
         if(ev.target !== elem){return true;}
         const rect = ev.target.getBoundingClientRect();
         const rect = ev.target.getBoundingClientRect();
         if(ev.x < rect.left || ev.x > rect.right) { return true; }
         if(ev.x < rect.left || ev.x > rect.right) { return true; }
         if(ev.y < rect.top || ev.y > rect.bottom) { return true; }
         if(ev.y < rect.top || ev.y > rect.bottom) { return true; }


         dialog.close();
         ev.target.close();
 
        dialog.showModal();
       });
       });
     });
     });

Version vom 11. Februar 2024, 21:34 Uhr