Ich versuche, meinen Dialog drei Sekunden nach dem Öffnen automatisch schließen zu lassen. Ich habe die folgenden Methoden ausprobiert:
%Vor%Hier ist es im Zusammenhang:
%Vor%Aber mit dieser Methode zeigt es sich nicht einmal! Ich vermute, dass die Close-Methode sofort aufgerufen wird, nachdem sie auf der Seite angezeigt wird. Das Protokoll zeigt keine Fehler.
Ich habe auch versucht, an das Ereignis dialogopen zu binden:
%Vor%Der Dialog zeigt, aber schließt sich nicht automatisch. Auch hier kein Fehler in den Logs.
Kann ich 'this' nicht im Argument für $ in setTimeout verwenden?
setTimeout ruft den Rückgabewert von $ ("# mydialog") auf. dialog ("close") nach 3 Sekunden. Sie wollen das Ganze als String werfen, und es sollte gut funktionieren. Ich glaube auch nicht, dass Sie 'dialogopen' binden wollen, bevor Sie den Dialog initialisieren. Unten sollte gut funktionieren:
%Vor%Ich habe einen Artikel speziell für das Problem geschrieben, das Sie gerade erleben. Bitte lesen Sie das.
Kurz gesagt, Sie möchten $("#mydialog").dialog('close')
mit einer Inline-Funktion überall dort umbrechen, wo sie aufgrund einer Verzögerung oder eines ausgelösten Ereignisses ausgeführt werden soll.
Der Dialog wird nicht einmal angezeigt, weil Sie ihn geschlossen haben, sobald Sie ihn in jedem Fall geöffnet haben.
Tags und Links javascript jquery jquery-ui settimeout