Joerg: Popup-Fenster zentrieren

Hallo Gemeinde!
Wie kann ich ein Popup-Fenster (start.html) auf dem Bildschirm zentrieren?

Ich habe folgenden Code:
index.html:
<html>
<head>
 <title>something weird</title>
 <script type="text/javascript">
  <!--
  sw = (screen.width-680)/2;
  sh = (screen.height-415)/2;
  window.open('start.html','main','width=680,height=415,left=sw,top=sh,location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no');
  //-->
 </script>
</head>

<body>
</body>
</html>

start.html: (hier nur zum Ausprobieren angegeben)
<html>
<head>
 <title>Start</title>
</head>

<body background="Startpage.gif" leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" marginwidth="0">
blah blah blah
</body>
</html>

Ich habe auch probiert, (screen.width-680)/2 und (screen.height-415)/2 statt sw und sh in window.open zu benutzen. Hat aber ebensowenig funktioniert. Dabei muesste es doch so funktionieren, oder?

Vielen Dank fuer jede Hilfe!

  1. Hi Joerg
    mit diesem window.open-Befehl sollte es gehn (bei mir funktionierts so)
    window.open('start.html','main','width=680,height=415,left='+sw+',top='+sh+',location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no');

    Gruss
    Axel :)

    1. Hi Joerg
      mit diesem window.open-Befehl sollte es gehn (bei mir funktionierts so)
      window.open('start.html','main','width=680,height=415,left='+sw+',top='+sh+',location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no');

      Gruss
      Axel :)

      Dann ist doch nur die linke obere Ecke zentriert!

      1. Dann ist doch nur die linke obere Ecke zentriert!

        Deswegen zieht er ja auch die Breite und Höhe des zu zentrierenden
        Fensters ab und Teilt es durch 2...So ist das Fenster dann in der Mitte.

    2. Danke Axel und herbalizer, so funktioniert's =)

      T!M: 680 und 415 ist nur die Groesse des zu oeffnenden Popups. Ich wollte ja gerade aufloesungsunabhaengig arbeiten.

  2. <script type="text/javascript">
      <!--
      sw = (screen.width-680)/2;
      sh = (screen.height-415)/2;
      window.open('start.html','main','width=680,height=415,left=sw,top=sh,location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no');
      //-->
    </script>

    Das 3. Argument in window.open() ist ein String. Also machst du folgendes:
    <script type="text/javascript">
       <!--
       sw = (screen.width-680)/2;
       sh = (screen.height-415)/2;
       geom = 'width=680,height=415,left='+sw+',top='+sh+',location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no'
       window.open('start.html','main',geom);
       //-->
    </script>

  3. sw = (screen.width-680)/2;
      sh = (screen.height-415)/2;

    versteh ich nicht, und wenn jetzt einer ne ganz andere Auflösnug eigestellt hat?

    also so irgenwie müßte die Formel ja sein:

    window.moveTo(Bildschirmbreite/2-fensterbreite/2, Bilschrimhöhe/2-fensterhöhe/2);

    okay?