Doofie: Optimale Bilddarstellung im neuen Fenster

Hallo,

ich habe ein Problem mit der Darstellung meiner Bilder in einen neuen Fenster. Ist das Bild größer als die eingestellte Auflösung, kann man es nicht ganz sehen, weil da ein Scrollbalken fehlt. Idealerweise wäre da natürlich ein Befehl sinnvoller, wonach sich das Bild im neuen Fenster automatisch der Auflösung anpasst. Beide Befehle kenne ich aber nicht. Ich verwende folgenden Script im Head: --<script type="text/javascript">
<!-- //Fuer alte Browser verstecken
function Foto(img){
  foto1= new Image();
  foto1.src=(img);
  Controlla(img);
}
function Controlla(img){
  if((foto1.width!=0)&&(foto1.height!=0)){
    viewFoto(img);
  }
  else{
    funzione="Controlla('"+img+"')";
    intervallo=setTimeout(funzione,20);
  }
}
function viewFoto(img){
  largh=foto1.width+20;
  altez=foto1.height+20;
  stringa="width="+largh+",height="+altez;
  finestra=window.open(img,"",stringa);
}
// - End of JavaScript - -->
</SCRIPT>--

Und so sieht es im Body aus:
--<a href="javascript:Foto('Bilder/garten1.jpg')"><img src="Bilder/garten1-klein.jpg" width=75 height=56 alt="">

Für eure Hilfe bedanke ich mich im voraus

Gruß Doofie

  1. Hallo,

    ich habe ein Problem mit der Darstellung meiner Bilder in einen neuen Fenster. Ist das Bild größer als die eingestellte Auflösung, kann man es nicht ganz sehen, weil da ein Scrollbalken fehlt. Idealerweise wäre da natürlich ein Befehl sinnvoller, wonach sich das Bild im neuen Fenster automatisch der Auflösung anpasst. Beide Befehle kenne ich aber nicht. Ich verwende folgenden Script im Head: --<script type="text/javascript">
    <!-- //Fuer alte Browser verstecken
    function Foto(img){
      foto1= new Image();
      foto1.src=(img);
      Controlla(img);
    }
    function Controlla(img){
      if((foto1.width!=0)&&(foto1.height!=0)){
        viewFoto(img);
      }
      else{
        funzione="Controlla('"+img+"')";
        intervallo=setTimeout(funzione,20);
      }
    }
    function viewFoto(img){
      largh=foto1.width+20;
      altez=foto1.height+20;
      stringa="width="+largh+",height="+altez;
      finestra=window.open(img,"",stringa);
    }
    // - End of JavaScript - -->
    </SCRIPT>--

    dieses Skript habe ich schonmal gesehen, ist aber ziemlich umständlich.
    es gibt für Image das onload und onerror event, was dir diese timeout erspart und auch funktioniert, wenn das Bild nicht vorhanden ist.

    Und so sieht es im Body aus:
    --<a href="javascript:Foto('Bilder/garten1.jpg')"><img src="Bilder/garten1-klein.jpg" width=75 height=56 alt="">

    Warum sperrst du unnötigerweise Besucher aus, die JS nicht benutzen könen oder wollen? eine JS Anweisung gehört in den Skripthandler.

    <a href="Bilder/garten1.jpg" onclick="Foto(this.href);return false">
    <img src="Bilder/garten1-klein.jpg" width=75 height=56 alt="">

    Das hat sogar für dich einen Vorteil da du diesen Link mit z.b. Dreamweaver bearbeiten kanst wie einen normalen Link.

    Du kannst versuchen, mit dem Screen Objekt http://www.netzwelt.com/selfhtml/javascript/objekte/screen.htm die Größe des Bildschirms rauszufinden und dann einfach das Fenster mit dieser größe maximal öffnest.

    Struppi.