PopUp-Window zentriert anzeigen
    
 HomePopUp-Windows • Window zentrieren Demo  QuellCode 

 PopUp-Window zentrieren

Abhängig von Breite und Höhe des PopUp-Windows und den Abmessungen des Bildschrims / dem Browserfenster, soll das PopUp-Window horizontal und vertikal mittig angezeigt werden.

Anzeigeposition des PopUp-Windows errechnen

UPDATE  26.04.2010, Funktion zur Ermittlung der Größe des Anzeigebereichs


   PopUp-Window zentriert anzeigen

Ein PopUp-Window können Sie in der Bildschimmitte horizontal und vertikal zentriert ausrichten. Statt der festen Einträge für die x- y-Position werden die Werte errechnet. Das erledigt JavaScript innerhalb der Funktion für das PopUp-Window für Sie.

Es wird die Position für die obere linke Ecke des PopUp-Windows errechnet!


Die Berechnung ist natürlich erst mal abhängig von Breite und Höhe des Windows, dessen Position für die linke obere Ecke errechnet werden soll. Aus der vefügbaren Fensterhöhe und -breite errechnet JavaScript, wo diese Ecke des Fensters positioniert werden muss.

Veranschaulichung der Berechnung des linken Abstands für die zur Verfügung stehende Fenster- / Bildschrimbreite:



 Bildschirmbreite


 Bildschirmbreite / 2


 halbe Bildschirmbreite - halbe Fensterbreite


Window








   Berechnung der Position

Vor dem Update wurden für Abfrage der Bildschirmdimensionen die internen JavaScript-Funktionen screen.width und screen.height genutzt.



Nach meinem Update nutze ich die internen JavaScript-Funktionen screen.availWidth und screen.availHeight, welche den wirklich zur Verfügung stehenden Platz innerhalb des Browserfensters berücksichtigen.






 Bildschirmbreite


 Bildschirmbreite / 2


 halbe Bildschirmbreite - halbe Fensterbreite


Window







In der Funktion sehen die Angaben für die Größe des PopUp-Windows, die Ermittlung der zur Verfügung stehenden Anzeigefläche und der linken oberen Position so aus:
// PopUp-Größe
PopUpBreite = "550";
PopUpHoehe = "400"

sbreite = screen.availWidth;
shoehe = screen.availHeight;

x = (sbreite - PopUpBreite)/2;
y = (shoehe - PopUpHoehe)/2;

Hier können Sie das JavaScript als Anwendungsbeispiel öffnen:

BEISPIEL Öffnen

QuellCode ansehen


Querverweise zum Thema Zentrieren

Inhaltsseite im Browserfenster zentrieren.

Frameset im Browserfenster zentrieren (Menü FRAMES).

Objekt in der Fenstermitte zentrieren

Fehlersuche 100% Tabellenhöhe (Menü Fehlersuche)
 



   Rückblick: Dynamische Berechnung vor dem Update

Die ermittelten Ergebnisse der alten Berechnung weichen unter Umständen browserabhängig von denen der neuen Berechnung dann ab, wenn die Seite z.B. innerhalb eines Framesets angezeigt wird, weil screen.width und screen.height im Gegensatz zu screen.availWidth und screen.availHeight in diesem Fall andere Werte zurückgeben.


Verwendet wurden screen.width und screen.height für die Abfrage der Bildschirmdimensionen.

Im JavaScript wird die Bildschirmweite ermittelt, die Fensterbreite subtrahiert und dieser Wert durch 2 geteilt. Der ermittelte Wert wird der Variablen winlinks zugewiesen !

Im JavaScript wird die Bildschirmhöhe ermittelt, die Fensterhöhe subtrahiert und dieser Wert durch 2 geteilt. Der ermittelte Wert wird der Variablen winoben zugewiesen !

Die Variablen w und h enhalten Angaben für die Fensterbreite und -höhe.

w = 500
h = 400



Berechnung der Breite: Variable: winlinks
var winlinks = (screen.width - w) / 2;

var winlinks = 
Ergebnis: Abstand von links ist


Genauso verfährt man mit der Höhe. Variable: winoben
var winoben = (screen.height - h) / 2;


var winoben =
Ergebnis: Abstand von oben ist




   Rückblick: Alternative Berechnung vor dem Update

Mit browserabhängigen Größenfeststellungen gab es für die älteren Versionen auch folgende Möglichkeit:
if(ns6||ns4) {
sbreite = innerWidth;
shoehe = innerHeight;
}
else if(ie4) {
sbreite = document.body.clientWidth;
shoehe = document.body.clientHeight;
}


erstellt: 14.08.2002   

NACH OBEN