Javascript: Wait for Event



  • Hallo,

    gibt es in Javascript sowas wie ein WaitforEvent, bzw. hat jemand eine Idee, wie man das Nachbasteln kann?

    Also sowas:

    function eineAeussereFunktion()
    {
      var result = eineWartendeFunktion();
      // hier geht's erst weiter, sobald in obiger Funktion ein Event (z.B. Click auf einen Schalter) gefeuert wurde,
      // soll sich also so verhalten, als ob da ein alert oder confirm drin stehen würde
    }
    

    Hat da jemand eine Idee?
    Eine einfache Callbackfunktion geht nicht, da auch der Aufrufer der äusseren Funktion warten muss.

    Lg


  • Mod

    Nein. Das ist sehr schlecht.

    Viele Browser haben nur einen JavaScript Thread - man sollte also Niemals die Ausführung blockieren. Deshalb ist JS sehr callback basierend.

    Du kannst hier nur selber per Schleife blockieren und das sollte man vermeiden. Ergo: Design ändern.

    Sorry 😕

    Sprich das machen:

    function eineAeussereFunktion() 
    { 
      eineWartendeFunktion(function(result) {
        foo(result);
      }); 
    }
    


  • Hey,

    ja, irgendwie war mir das nach langer, erfolgloser Suche klar.
    Aber wie gesagt, deine Lösung hilft mir erstmal nicht, da diese 'eineWartendeFunktion' sowas wie ein confirm ist und 'eineAeussereFunktion' abhängig von der Auswahl etwas zurück geben muss.

    Naja, Danke, dann weiss ich jetzt wenigstens, dass ich zwingend in einer anderen Richtung suchen muss.

    Lg


Anmelden zum Antworten