dedlfix: modale Fenster

Beitrag lesen

Tach!

Ok, Vielen Dank für die Erlärung. Wie gesagt im Netz gibt es etliche Erklärungen und Beschreibungen wie modale Fenster erzeugt und benutzt werden. Das würde doch bedeuten, dass ein modales Fenster dann erst am Ende des Programm-Flußes angezeigt wird und lediglich eine Info beinhaltet.

Nein. Das modale Fenster ist erstmal nur eine Änderung des DOM, dergestalt dass die bisherigen Elemente der Seite überlagert und oft auch unbedienbar gemacht werden. Ansonsten verhalten sich die Dialog-Elemente nicht anders als andere HTML-Elemente, was die Bedienbarkeit und Interaktivität angeht. Nachdem diese Dialog-Elemente ins DOM eingebracht wurden, beendet man zunächst seine Arbeit (sprich: den Eventhandler, der zur Erstellung der Dialog-Elemente geführt hat) und der Programmfluss geht wieder an den Browser zurück, der sich wieder der Abarbeitung der Event Loop widmet oder idlet, wenn darin nichts zu finden ist. Es ist nun möglich, dass der Anwender Bedienhandlungen vornehmen kann, die der Browser wie üblich behandelt. Wenn es beispielsweise ein Klick auf den OK-Button ist, dann löst er dafür ein Event aus. Du kannst einen entsprechenden Eventhandler schreiben, der daraufhin die Elemente des Dialogs aus dem DOM entfernt, so dass die ursprünglichen Elemente wieder sichtbar und bedienbar werden. Der Eventhandler kann hier nun einfach enden, wenn nichts weiter zu tun ist. Oder aber, er ruft eine vorher definierte Funktion auf, die irgendwas macht, was auch immer getan werden soll. Das Aufrufen einer vordefinierten Funktion ist aber recht unflexibel, weswegen man generell lieber einen beim Erstellen übergebenen Callback aufruft, oder zu Mechanismen wie dem Promise greift.

dedlfix.

0 48

modale Fenster

JSKid
  • javascript
  1. 0
    Christian Kruse
  2. 0
    dedlfix
    1. 0
      JSKid
      1. 0
        Auge
        • html
        • javascript
        • programmiertechnik
        1. 0
          JSKid
          1. 0
            dedlfix
          2. 0
            Auge
          3. 0
            Felix Riesterer
      2. 0
        dedlfix
  3. 4
    Felix Riesterer
    1. 0
      Matthias Scharwies
    2. 1
      JürgenB
      1. 1
        Christian Kruse
        1. 1
          JürgenB
          1. 0
            Christian Kruse
            1. 0
              Felix Riesterer
              1. 0
                Felix Riesterer
          2. 0
            Felix Riesterer
            1. 0
              Christian Kruse
      2. 0
        Felix Riesterer
        1. 0
          JürgenB
          1. 0
            dedlfix
            1. 0
              JürgenB
    3. 1
      dedlfix
      1. 0
        Felix Riesterer
        1. 0
          dedlfix
          1. 0
            Felix Riesterer
            1. 0
              dedlfix
              1. 0
                Felix Riesterer
                1. 0
                  dedlfix
                  1. 0
                    Felix Riesterer
                    1. 1
                      Felix Riesterer
    4. 0
      1unitedpower
      1. 0
        JürgenB
      2. 0
        Felix Riesterer
        1. 1
          1unitedpower
          1. 0
            JürgenB
            1. 0
              1unitedpower
          2. 0
            Felix Riesterer
            1. 0
              1unitedpower
    5. 0
      Felix Riesterer
      1. 0
        dedlfix
        1. 0
          Felix Riesterer
          1. 1
            dedlfix
            1. 0
              Felix Riesterer
              1. 0
                dedlfix
              2. 1
                dedlfix