2010-03-25 5 views
14

ich wie in dieser Seite einen Dialog erschaffe:Wenn ich einen Dialog mit jquery erstelle, wie verberge ich den Dialog div?

http://jqueryui.com/demos/dialog/#modal-confirmation

(Quelltext anzeigen klicken)

auf der Unterseite ist der div, die im Dialog gelegt wird. Der Dialog funktioniert perfekt, wenn er vom Javascript aufgerufen wird, aber der Dialog erscheint beim Laden der Seite unten auf der Seite. (minus all dem Styling, das angewendet wird, wenn es von der JavaScript-Funktion aufgerufen wird)

Wie kann ich das div verbergen und trotzdem zulassen, dass der Dialog es verwendet? Ich habe versucht, style = "visibility: hidden" zu setzen, aber das verhindert, dass es angezeigt wird, wenn es vom Javascript aufgerufen wird.

Antwort

31

Dies kann eine dumme Frage sein, aber statt "visibility:hidden" haben Sie versucht "display:none;"? Ich musste das gleiche Problem für ein Projekt lösen, an dem ich gerade arbeite, und ich bin mir ziemlich sicher, dass es angezeigt wird: Keines hat funktioniert.

können Sie auch die

$(foo).dialog({ autoOpen: false }); 

Option verwenden, um "zu initialisieren", um den Dialog (also es versteckt und alles, was gute Sachen). Der einzige Haken ist, dass der Dialog wahrscheinlich "flimmert", wenn die Seite geladen wird, aber bevor jQuery eine Chance hat, sie zu verbergen.

+0

display: keine ist die Art und Weise $ .hide() funktioniert, und ich bin sicher, jQuery UI verwendet es in dieser Situation. – JKirchartz

+0

Arbeitete perfekt danke :) – stormist

+1

Welchen gingest du mit display: none oder autoOpen: false? – R0MANARMY

Verwandte Themen