Ajuster des images à la définition de l'écran dans une nouvelle fenêtre

Contenu du snippet

Ce script ouvre une fenêtre, lors d'un click sur une vignette.
Il detecte la taille de l'image (normale) et ajuste l'ouverture de la fenêtre à la taille de l'image en fonction de cette dernière.

But du script :

Pouvoir lors d'un click sur une image en miniature, ouvrir une nouvelle fenêtre, avec l'image qui s'ajuste à la définition d'écran de l'utilisateur.
Internet Explorer 6.0 dispose de cette fonction dans ses paramêtres. Ici grace à ce script, nous vous proposons de faire bénéficier à tous de ce confort visuel.
L'utilisateur qui souhaite visualiser une de vos miniatures, ne sera plus obligé de "jouer" de l'ascenseur pour voir toute l'image.

Source / Exemple :


<!-- A INSERER ENTRE HEAD ET /HEAD -->

<script language="JavaScript">
/***************************************************************************

  • Fonction Ajustement Définition
  • AUTO_SCREEN | Ver. 1.2 | 19/09/2002
*
  • Ouvre une nouvelle fenêtre sur click d'une vignette et affiche
  • l'image réelle avec ajustement à l'ecran du visiteur.
*
  • Copyright : (C) 2002 BLINCKERS© Groups
  • Author : McPeter
  • Email : mcpeter@blinckers-groups.com
  • WWW : http://www.blinckers-groups.com
  • GNU GPL (english)
  • This program is free software; you can redistribute it and/or modify
  • it under the terms of the GNU General Public License as published by
  • the Free Software Foundation; either version 2 of the License, or
  • (at your option) any later version.
                                                                                                                                                      • /
function VoirPhoto(chemin) { // Définition des variables 'ecran' var LargeurEcran = screen.availWidth; var NewLargeurEcran = parseInt(LargeurEcran * 0.993); var LargeurMaxEcran = parseInt(LargeurEcran * 0.980); var HauteurEcran = screen.availHeight; var NewHauteurEcran = parseInt(HauteurEcran * 0.97); var HauteurMaxEcran = parseInt(HauteurEcran * 0.939); //--------------------------------------------------- // Définition des variables 'image' photo = new Image(); photo.src = chemin ; var LargeurImg = photo.width ; var NewLargeurImg = LargeurMaxEcran; var HauteurImg = photo.height ; var NewHauteurImg = HauteurMaxEcran; //--------------------------------------------------- // Environnement à l'affichage => Titre de fenêtre + tableau centreur // Vous pouvez modifier le texte en orange var titre = "<title>Le titre de ma page de visualisation d'images</title>"; var HautTableau = "<table cellspacing=0 cellpadding=0 border=0 width=100% height=100%><tr><td align=center valign=middle>"; var BasTableau = "</td></tr></table>"; //--------------------------------------------------- // Vérification du visuel à mettre en oeuvre if ((LargeurImg >= LargeurMaxEcran)||(HauteurImg >= HauteurMaxEcran)) { // Si l'image est plus grande que l'écran en largeur 'ou' en hauteur if ((LargeurImg >= LargeurMaxEcran)&&(HauteurImg <= HauteurMaxEcran)) { // Si l'image est plus grande que l'écran en largeur 'et' plus petite en hauteur affichage = "<img src="+photo.src+" width="+LargeurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } else if ((LargeurImg >= LargeurMaxEcran)&&(HauteurImg >= HauteurMaxEcran)) { // Si l'image est plus grande que l'écran en largeur 'et' en hauteur if ((LargeurImg >= HauteurImg)&&(HauteurImg <= HauteurMaxEcran)) { // Si l'image à une largeur plus grande que sa hauteur 'et' que sa hauteur est plus petite que la hauteur d'écran affichage = "<img src="+ photo.src+" width="+LargeurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } else if ((LargeurImg >= HauteurImg)&&(HauteurImg >= HauteurMaxEcran)) { // Si l'image à une largeur plus grande que sa hauteur 'et' que sa hauteur est plus grande que la hauteur 'écran affichage = "<img src="+ photo.src+" height="+HauteurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } else if ((LargeurImg <= HauteurImg)&&(HauteurImg <= HauteurMaxEcran)) { // Si l'image à une largeur plus petite que sa hauteur 'et' que sa hauteur est plus petite que la hauteur 'écran affichage = "<img src="+ photo.src+" width="+LargeurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } else if ((LargeurImg <= HauteurImg)&&(HauteurImg >= HauteurMaxEcran)) { // Si l'image à une largeur plus petite que sa hauteur 'et' que sa hauteur est plus grande que la hauteur d'écran affichage = "<img src="+ photo.src+" height="+HauteurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } } else if ((LargeurImg <= LargeurMaxEcran)&&(HauteurImg >= HauteurMaxEcran)) { // Si l'image est plus petite en largeur que l'écran 'et' plus grande en hauteur affichage = "<img src="+ photo.src+" height="+HauteurMaxEcran+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } } else if ((LargeurImg <= LargeurMaxEcran)&&(HauteurImg <= HauteurMaxEcran)) { // Si l'image est plus petite que l'écran en largeur 'et' en hauteur affichage = "<img src="+ photo.src+" width="+LargeurImg+">"; viewver = open("","","width=" + NewLargeurEcran + ",height=" + NewHauteurEcran + ",top=0,left=0"); } //--------------------------------------------------- // Affichage de l'image visuel = titre + HautTableau + affichage + BasTableau; viewver.document.write(visuel); //--------------------------------------------------- } </script> <!-- A INSERER DANS BODY --> <BODY> <!-- A partir d'une miniature d'une image, on applique la fonction 'VoirPhoto' avec en attribut, le chemin d'accès (relatif ou absolu) de l'image normale. --> <IMG src="mini_image_1.gif" border="0" width="200" onclick="VoirPhoto('images/normal_image_1.gif')"> <IMG src="mini_image_2.gif" border="0" width="200" onclick="VoirPhoto('images/normal_image_2.gif')"> <IMG src="mini_image_3.gif" border="0" width="200" onclick="VoirPhoto('images/normal_image_3.gif')"> <IMG src="mini_image_4.gif" border="0" width="200" onclick="VoirPhoto('images/normal_image_4.gif')"> </BODY>

Conclusion :


J'ai fait ce script suite à la demande d'un copain sur mon forum
=> http://forums.blinckers-groups.com/viewtopic.php?t=159
Les mises à jours (si y'en a) sont visible là
=> http://www.blinckers-groups.com/cours/javascript_1.php

Toutes critiques (constructives :-) ) est la bienvenue...

@++

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.