Window.open als modales Popup?

8

Ich möchte window.open als modales Popup öffnen.

%Vor%

Ich kann Window.ShowModelDialog() verwenden, aber in meinem untergeordneten Fenster rufe ich die Methode "pater javascript" auf. Das passiert nicht mit ShowModelDialog ().

%Vor%

Wenn ich window.open() verwende. Ich kann Parent Javascript aufrufen. Aber Fenster ist nicht modal.

Wie löst man das? Kann ich etwas in das untergeordnete Popup schreiben, um immer oben zu bleiben?

    
James123 14.10.2010, 21:07
quelle

4 Antworten

38

Ein Popup-Fenster ist ein Kind des Elternfensters, aber es ist kein Kind des Eltern-DOCUMENT. Es ist sein eigenes unabhängiges Browserfenster und ist nicht im übergeordneten Element enthalten.

Verwenden Sie stattdessen ein absolut positioniertes DIV und ein transluzentes Overlay.

BEARBEITEN - Beispiel

Sie brauchen jQuery dafür:

%Vor%     
Diodeus - James MacFarlane 14.10.2010, 21:18
quelle
8

Sie können versuchen, einen modalen Dialog mit html5 und css3 zu öffnen, versuchen Sie diesen Code:

%Vor%     
nacho 02.02.2014 10:03
quelle
3

Diese Lösung öffnet ein neues Browserfenster ohne die normalen Funktionen wie Adressleiste und ähnliches.

Um ein modales Popup zu implementieren, rate ich Ihnen, jQuery und SimpleModal , das ist wirklich glatt.

(Hier sind ein paar einfache Demos mit SimpleModal: Ссылка )

    
Martin S Ek 14.10.2010 21:15
quelle
0

Ich stimme beiden vorherigen Antworten zu. Im Grunde genommen möchten Sie ein sogenanntes "Lightbox" - Ссылка

verwenden

Es ist im Wesentlichen ein Div, das im DOM Ihres aktuellen Fensters / Tabs erstellt wird. Zusätzlich zum div, das Ihr Dialogfeld enthält, blockiert ein transparentes Overlay den Benutzer daran, alle darunter liegenden Elemente zu aktivieren. Dies kann effektiv einen modalen Dialog erzeugen (d. H. Der Benutzer MUSS eine Art Entscheidung treffen, bevor er fortfährt).

    
Jonathan Nesbitt 15.10.2010 04:29
quelle

Tags und Links