window.open mit Variablenübergabe

NoGi

Mitglied
Servus,

ich habe ein kleines Problem im folgenden Code wird die absolute Breite und Höhe des Bildschirms ausgelesen und dann eine bestimmte Fenstergröße berechnet. Übergebe ich diese Variablen das der window.open Funktion wird ein Fenster von 100% breite und fast 100% (die Statusleiste ist noch zu sehen) höhe erzeugt. Schreibe ich die Werte fest in den Funktionsaufruf funktioniert es. Es wäre natürlich schön wenn sich das Fenster an die Bildschirmauflösung des Users anpassen würde.

Hier der Code:

Berechnung, aber ohne Variablenübergabe, feste Werte
function openumfrage(pfad)
{
breite_gesamt = screen.width;
breite_fenster = Math.round(breite_gesamt * 0.85);
abstand_links = Math.round((breite_gesamt - breite_fenster) * 0.5);
hoehe_gesamt = screen.height;
hoehe_fenster = Math.round(hoehe_gesamt * 0.85);
abstand_oben = Math.round((hoehe_gesamt - hoehe_fenster) * 0.5);
F1 = window.open(pfad,'Fotos','width=870,height=653,left=77,top=58');
}

Berechnung, mit Variablenübergabe, variable Werte
function openumfrage(pfad)
{
breite_gesamt = screen.width;
breite_fenster = Math.round(breite_gesamt * 0.85);
abstand_links = Math.round((breite_gesamt - breite_fenster) * 0.5);
hoehe_gesamt = screen.height;
hoehe_fenster = Math.round(hoehe_gesamt * 0.85);
abstand_oben = Math.round((hoehe_gesamt - hoehe_fenster) * 0.5);
F1 = window.open(pfad,'Fotos','width=breite_fenster,height=hoehe_fenster,left=abstand_links,top=abstand_oben');
}



Vielen Dank für die Hilfe im voraus.

Gruß

NoGi
 
Hallo,

die wert die du berechnest werden der Funktion nicht übergeben. Du setzt sie in ' ' -> daruch werden sie als String und nicht als Variablen angesehen...

So sollte es gehen:
PHP:
function openumfrage(pfad)
        {
            breite_gesamt = screen.width;
            breite_fenster = Math.round(breite_gesamt * 0.85);
            abstand_links = Math.round((breite_gesamt - breite_fenster) * 0.5);
            hoehe_gesamt = screen.height;
            hoehe_fenster = Math.round(hoehe_gesamt * 0.85);
            abstand_oben = Math.round((hoehe_gesamt - hoehe_fenster) * 0.5);
            F1 = window.open(pfad,'Fotos','width='+breite_fenster+',height='+hoehe_fenster+',left='+abstand_links+',top='+abstand_oben);
        }

ciao
 
Zurück