Pop-up Auto-Ajust

Résolu/Fermé
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 - 19 août 2009 à 15:07
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 - 20 août 2009 à 09:26
Bonjour,

J'ai une liste en PHP, et je souhaiterais que, lorsque je clic sur un lien, qu'un pop-up s'ouvre avec une image dedans ! Jusque là, rien de bien compliquer ! Cependant, je voudrais que ce pop-up s'ajuste automatiquement aux dimensions de mon image ! Si elle fait 320x250, que mon pop-up s'affiche mais avec la taille exacte de l'image, sans bordures ! Avez-vous des idées ?

Merci d'avance ^^
A voir également:

11 réponses

Utilisateur anonyme
19 août 2009 à 15:14
C'est possible, il faut utiliser la propriété de l'objet image de javascript ou l'instruction getimagesize de php pour avoir les dimension exactes de l'image de la pop-up.Ensuite avec ces dimensions, tu les met en paramètre de la methode open() de javascript pour que les dimensions de la pop-up s'ajuste à celle de l'image.
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
19 août 2009 à 15:34
Je pense avoir compris le système, genre on place ces valeurs dans une variable que l'on remet dans le width et height du pop-up ! Mais comment récupérer ces infos via javascript ?
0
Utilisateur anonyme
19 août 2009 à 15:48
Exactement.

Pour avoir les dimensions exactes de l'image via javascript, tu dois utiliser new Image().

Par exemple:
Supposons que ton image se situe dans http://www.tonSite.net/image/tonImage.gif.
Donc, pour avoir les dimensions de tonImage.gif, tu dois faire comme ça :
<script language='javascript'>
objImage=new Image();
objImage.src="http://www.tonSite.net/image/tonImage.gif";
/*Ainsi, tu obtiens son height, et son width:*/
varHeight=objImage.height;
varWidth=objImage.width;
</script>

Et si tu veut que la pop-up aie les mémes dimensions que l'image, alors tu met
height=varHeight,width=varWidth dans les parametres de open().

0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
19 août 2009 à 15:55
Wah ok, je testerais ça ce soir ! Merci beaucoup pour ton aide ^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
19 août 2009 à 18:55
Bon, petit problème, ça ne marche pas que ça devrait ^^"

J'ai ça :
function scan(id) {
			objImage=new Image();
			objImage.src="scan/" + id + '.jpg'";
			var VHeight=objImage.height; 
			var VWidth=objImage.width;
			window.open("scan/" + id + '.jpg',"_blank","width=VWidth, height=VHeight");
			}


J'ai rien qui se lance... Une idée ?
0
Utilisateur anonyme
19 août 2009 à 19:17
Met le code complet pour qu'on puisse mieux le corriger

PS: ce serais bien que tu le poste ici maintenant car je suis aussi ocupé ailleurs
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
19 août 2009 à 19:23
Utilise une "Lightbox", ça donnera mieux :)
Tu trouveras sûrement celle qui te convient le mieux ici.
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
19 août 2009 à 21:08
J'ai pensé au lightbox mais bon, au final, j'ai tout sur place là, j'ai juste à trouver ce fichu code ^^"

Pour le code complet (je mets juste ce qui nous interesse) :

Partie Head :
function scan(id) {
			objImage=new Image();
			objImage.src="scan/" + id + '.jpg'";
			var VHeight=objImage.height; 
			var VWidth=objImage.width;
			window.open("scan/" + id + '.jpg',"_blank","width=VWidth, height=VHeight");
			}

Partie Body
echo '<td width="350" class="',$surlil,'" background="',$colo2,'"><a onClick="scan('.$row['id'].');">'.$row["nom"].'</a><div id="iscan"><div></td>';


Merci encore pour votre aide ^^
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
20 août 2009 à 00:04
Up !
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
20 août 2009 à 08:45
Au final, si on veux pas s'embeter :

Partie Head :
function scan(id) {
			objImage=new Image();
			objImage.src="scan/" + id + '.jpg'";
			var VHeight=objImage.height; 
			var VWidth=objImage.width;
			window.open("scan/" + id + '.jpg',"_blank","width=VWidth, height=VHeight");
			}


Partie Body
echo '<td><a onClick="scan('.$row['id'].');">'.$row["nom"].'</a></td>';


Il n y a vraiment personne qui a une idée ?
0
Heryu Messages postés 567 Date d'inscription mercredi 15 juillet 2009 Statut Membre Dernière intervention 28 juin 2016 62
20 août 2009 à 09:26
Bon, finalement tu as raison, je vais me servir d'une lightbox ! C'est pas très personnel mais bon, ca fera l'affaire ! Merci à tous ceux qui m'ont aidé ! ^^
0