Ede: iFrame - wie einbauen oder gibt es eine bessere Möglichkeit?

Hallo,

ich möchte mit IrfanView Bildergalerien erstellen.

Um diese ein wenig aufzupeppen, habe ich das Template angepasst und ein kleines Frameset zusammengestellt (Beispiel hier: http://www.haettae-lila.de/hlsites/galerie/2008/1Blank/ )

Das Bild im rechten Frame befindet sich in einem iFrame und wird jeweils mittels "target" direkt geladen.

Problem: Bilder im Hochformat (siehe die Vogelscheuche ;-) ) füllen das iFrame natürlich nicht komplett aus und es wird ein hässlicher weißer Rand angezeigt (zumindest im IE, FF ist da ein bischen schlauer).

Frage: Kann ich das IFrame irgendwie so definieren, dass es automatisch die Größe des angezeigten Bildes annimmt? Oder gibt es eine (einfache) Lösung das IFrame mittels JavaScript/CSS an das angezeigte Bild anzupassen? Oder würdet ihr eine ganz andere Möglichkeit wählen das Bild auf der rechten Seite anzuzeigen (gegebenenfalls ohne IFrame)?

Vielen Dank im Voraus,
Ede

  1. Grüße,

    Frage: Kann ich das IFrame irgendwie so definieren, dass es automatisch die Größe des angezeigten Bildes annimmt? Oder gibt es eine (einfache) Lösung das IFrame mittels JavaScript/CSS an das angezeigte Bild anzupassen? Oder würdet ihr eine ganz andere Möglichkeit wählen das Bild auf der rechten Seite anzuzeigen (gegebenenfalls ohne IFrame)?

    JA.

    frames sind nie gut (glaub mir - bin ehemaliger framist^^).

    ich würde dir vorshclagen, dass du ein vorgefertigtes gallery-script aus dem netz holst, bzw wurde hier auf dem forum ein recht guter entwickelt. die ienzige voraussetzung wären dementsprechende serverseitige techniken (php). wenn dein server dies unterstützt - wird es keine probleme geben.

    MFG
    bleicher

    --
    __________________________-
    Menschen an sich , sind nicht schlecht - es sind nur ihre Taten (c).
    http://www.sexgott-or-not.com/?test=428054
    1. ich würde dir vorshclagen, dass du ein vorgefertigtes gallery-script aus dem netz holst, bzw wurde hier auf dem forum ein recht guter entwickelt. die ienzige voraussetzung wären dementsprechende serverseitige techniken (php). wenn dein server dies unterstützt - wird es keine probleme geben.

      Danke für die Antwort! Ich würde das ganze aber gerne möglichst unverändert lassen und mit so wenig Script wie möglich arbeiten.

      Serverseitige Techniken sind keine Option.

      1. Grüße,

        Serverseitige Techniken sind keine Option.

        hier ist ein wolf begraben - du müsstest dann (um ohne frames zu arbeiten) für jedes einzelne bild eine eigene html-datei generieren, die zugleich links zu allen anderen gallerie-html enthalten sollte...

        gibt es einen guten grund auf serverseitige techniken zu verzichten? es gibt reichlich freehosting mit php & co

        MFG
        bleicher

        --
        __________________________-
        Menschen an sich , sind nicht schlecht - es sind nur ihre Taten (c).
        http://www.sexgott-or-not.com/?test=428054
  2. Hi,

    ich möchte mit IrfanView Bildergalerien erstellen.

    ich dachte immer, das Teil wäre ein Bildbearbeitungsprogramm ;-)

    Um diese ein wenig aufzupeppen, habe ich das Template angepasst und ein kleines Frameset zusammengestellt (Beispiel hier: http://www.haettae-lila.de/hlsites/galerie/2008/1Blank/ )

    Es gibt keinen Grund für ein Frameset. Eine derartige Aufteilung lässt sich problemlos mit einer Liste von Thumbnails und Dom-Methoden erreichen:

    var state =  false;
        function load_image (path, wd, ht) {

    var el,img, clone;

    // Bild erzeugen und Eigenschaften zuweisen
            //
            img                 =  document.createElement("img");
            img.style.width     =  wd + "px";
            img.style.height    =  ht + "px";
            img.setAttribute("src", path);

    // div ohne Inhalt kopieren
            // original div wegschmeissen und Bild in Kopie reinhängen
            // sicherheitshalber Kopie erneut die id zuweisen
            //
            el                  =  document.getElementById("orgdpl");
            clone               =  el.cloneNode(false);
            el.parentNode.replaceChild(clone,el);
            clone.appendChild(img);
            clone.id            =  "orgdpl";
        }

    Im html brauchts das div zur Anzeige des Bildes
        <div id="orgdpl"></div>

    und die Liste mit thumbs, etwa so:
        <li>
            <a title="..." href="orginal.jpg" onclick="load_image('orginal.jpg', 350, 470); return false;">
                <img src="thumb.jpg" width="52" height="70">
            </a>
        </li>

    Im href bietest Du eine Alternativ-Url an, die nur dann zum Tragen kommt, wenn js aus ist.

    Du kannst natürlich auch gleich eine lightbox verwenden ;-)

    Gruesse, Joachim

    --
    Am Ende wird alles gut.