Daniel Steinbach: Links im gleichen Popupfenster öffnen.

Ich habe von JavaScript keine Ahnung. der Versuch von anderen Seiten abzuschreiben klappte auch nicht. Folgendes hab ich vor:
In einer Photogalerie möchte ich die Links zu den großen Photos auf immer das gleiche Popupfenster verweisen, welches aber auch seine Größe je nach Photo ändert, und das Popupfenster sollte von allein in den Vordergrund rücken wenn mann einen Link öffnet.
Wie mach ich das???
Danke für eure Hilfe.

  1. Steht der Link in deinem popup-Fenster oder im Hauptfenster?

    Michael

    1. Im Hauptfenster.
      Vielen Dank.

  2. Ich habe von JavaScript keine Ahnung. der Versuch von anderen Seiten abzuschreiben klappte auch nicht. Folgendes hab ich vor:
    In einer Photogalerie möchte ich die Links zu den großen Photos auf immer das gleiche Popupfenster verweisen, welches aber auch seine Größe je nach Photo ändert, und das Popupfenster sollte von allein in den Vordergrund rücken wenn mann einen Link öffnet.
    Wie mach ich das???

    Ups.. hatte mich eben verlesen!

    Also, was du brauchst, ist
    a.) der Name deines popup-Fensters (den findest du in der Funktion, die das Fenster öffnet), ich nenne es jetzt mal "POPUP"

    Den folgenden Code fügst du in deine Galerie ein:

    <html>
    <head>...</head>
    </script>
    function loadImage(imgURL,x,y) {
    POPUP.resizeTo(x,y);
    POPUP.location.replace(imgURL);
    POPUP.focus();
    }
    </script>

    und dann im body wo du die Bilder lädst:

    <body>
    ...
    <a href="javascript:loadImage('bild1.jpg',200,200);">BILD1</a>
    <a href="javascript:loadImage('bild2.jpg',100,250);">BILD2</a>
    ...

    oder ähnlich, wobei
    bild1.jpg durch den Namen deines Bildes ersetzt werden muß
    x durch die gewünschte Breite deines Popups
    y durch die gewünschte Höhe deines Popups

    Hoffe das klappt alels so, dürfte aber nix mehr falsch sein dran ;)!

    MFG
    Michael

    1. Hallo, Michael, hallo, Daniel,

      In einer Photogalerie möchte ich die Links zu den großen Photos auf immer das gleiche Popupfenster verweisen, welches aber auch seine Größe je nach Photo ändert, und das Popupfenster sollte von allein in den Vordergrund rücken wenn mann einen Link öffnet.

      Also, was du brauchst, ist
      a.) der Name deines popup-Fensters (den findest du in der Funktion, die das Fenster öffnet), ich nenne es jetzt mal "POPUP"

      Das ist soweit richtig.

      function loadImage(imgURL,x,y) {
      POPUP.resizeTo(x,y);
      POPUP.location.replace(imgURL);
      POPUP.focus();
      }

      Dieser Code ist nutzlos: Wenn das Fenster noch nicht geöffnet wurde, wird kein Fenster geöffnet. Deshalb muss jeder Link das Popup-Fenster "erneut" öffnen, d.h. der window.open-Aufruf und der

      <a href="javascript:loadImage('bild1.jpg',200,200);">BILD1</a>
      <a href="javascript:loadImage('bild2.jpg',100,250);">BILD2</a>

      Popup-Aufrufe mit href="javascript:..." zu realisieren ist sehr unklug, da Suchmaschinen und Besucher, welche JavaScript deaktiviert haben oder deren Browser kein JavaScript unterstützten, ausgeschlossen werden.
      Näheres unter: http://home.t-online.de/home/dj5nu/js-popup.html

      Möglich *wäre* folgende Lösung (bitte erst weiterlesen, denn diese Lösung ist nicht empfehlenswert!):

      Im head-Element:
        <script type="text/javascript">
        function limg (url, breite, hoehe) {
         fenster=window.open(url, "fenster","width="+breite+",height="+hoehe+",resizable=yes,location=no,menubar=no,scrollbars=no,status=no,toolbar=no");
         fenster.resizeTo(breite,hoehe);
         fenster.focus();
         return false;
        }
        </script>

      Aufruf mit:
        <a href="grafik.jpg" onclick="return limg(this.href,132,456)">grafik.jpg</a>

      Diese Lösung ist jedoch nicht realisierbar, da Browser für gewöhnlich standardmäßig einen Rahmen anzeigen, wenn man eine Grafik als URI benutzt. Da man dies scheinbar nicht interoperabel durch JavaScript beeinflussen kann, ist es nicht möglich, das Popup-Fenster an die Größe der darin enthaltenen Grafik anzupassen. Es bleibt nur die Möglichkeit, im Popup-Fenster eine HTML-Datei zu öffnen.
      Eine Lösungsmöglichkeit, welche serverseitig PHP verwendet, habe ich unter http://forum.de.selfhtml.org/archiv/2002/9/23627/#m130831 vorgestellt, die Ränder des HTML-Dokuments müsste man entsprechend mit CSS auf 0 (null) setzen (bspw. html,body (margin:0; padding:0;}).
      Wenn du Fragen zu dem Konzept hast, immer her damit.

      An Michael: Bitte lies http://forum.de.selfhtml.org/archiv/2002/9/23697/#m131105

      Grüße,
      Mathias