[Javascript] Vignette agrandie dans une nouvelle fenêtre - bug

Vignette agrandie dans une nouvelle fenêtre - bug [Javascript] - HTML/CSS - Programmation

Marsh Posté le 25-05-2005 à 02:46:26    

Bonsoir,
 
Sur mon site perso, des vignettes sont cliquables et permettent d'agrandir la vignette dans un pop-up. J'ai voulu combiner différents scripts trouver sur le net en les adaptant pour obtenir ce que je voulais :
- ouverture de la vignette dans un pop-up dont la taille s'adapte à celle de l'image agrandie
- bouton droit inopérable sur l'image agrandie
- quand on clique droit sur l'image agrandie, elle se ferme
 
Le code que j'ai utilisé est ci-dessous. Toutefois, j'obtiens un message d'erreur sur IE : ça ne fonctionne pas. Sur Firefox je n'ai pas de message d'erreur mais ça ne fontionne pas toujours.
Sous IE, le mot de passe est le suivant :
 
Ligne 33
Erreur : 'undefined' a la valeur Null ou n'est pas un objet

 
Impossible pour moi de voir où est l'erreur. La page se trouve à l'adresse suivante : http://www.aumaroc.net/pages/contenu/casa_appart.html (accès direct sur www.aumaroc.net).
Je pense toutefois que c'est bénin mais ne trouve pas l'erreur.
 
Merci à ceux qui pourront me donner ce coup de pouce, l'intégralité de mon site est bloqué à cause de ça...
 
ArnoCHE.
 
 
CODE
 
<script language="JavaScript">
function AfficheImage(img){
  Image1= new Image();
  Image1.src=(img);
  Control(img);
}
function Control(img){
  if((Image1.width!=0)&&(Image1.height!=0)){
    VoirImage(img);
  }
  else{
    fonction="Control('"+img+"')";
    intervalle=setTimeout(fonction,20);
  }
}
var fois=0
function VoirImage(img)
{
newImage = new Image();
newImage.src = img;
html = '<html><head><title>Photo !</title></head><body leftmargin=5 marginwidth=5 topmargin=5 marginheigth=5 oncontextmenu="return false"><center>'+
'<a href="#" onClick="window.close()"><img src="'+img+'" border=0 name=monImage onLoad="window.resizeTo(document.monImage.width+20,document.monImage.height+40); window.moveTo(30,15)"> </a></center></body></html>';
if (fois == 1 ) ouvrirImage.close();
ouvrirImage = window.open('','_blank','toolbar=0,location=0,menuBar=0,scrollbars=0,resizable=0');
ouvrirImage.document.write(html);
fois=1;
}
</script>

Reply

Marsh Posté le 25-05-2005 à 02:46:26   

Reply

Marsh Posté le 25-05-2005 à 08:00:34    

ArnoChe a écrit :

- bouton droit inopérable sur l'image agrandie
- quand on clique droit sur l'image agrandie, elle se ferme


Je te laisse 24h pour enlever ça, et remettre le bouton droit normalement, ou je débarque chez toi et je casse la gueule à tout le monde :D

Reply

Marsh Posté le 25-05-2005 à 08:01:44    

Sinon, chez moi ça fonctionne parfaitement :) Enfin presque, en cliquant sur une image y'a Firefosqume qui bloque le popup, donc faut trouver un moyen différent de faire ça...

Reply

Marsh Posté le 25-05-2005 à 08:02:51    

ArnoChe a écrit :

Sur Firefox je n'ai pas de message d'erreur


Marrant, moi j'en ai 11
 
edit/PS: ce forum n'a pas pour vocation de faire du support pour les scripts moisis trouvés à droite à gauche


Message édité par masklinn le 25-05-2005 à 08:06:04

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 25-05-2005 à 08:04:12    

P'tain faut que je pense à remettre la webdevelopper :(

Reply

Marsh Posté le 25-05-2005 à 08:55:29    

putain c'est trop dur de faire appel à une page PHP avec le nom de l'image en parametre ???
 
genre : image.php?img=..\rep\monimage.jpg

Reply

Marsh Posté le 25-05-2005 à 09:17:42    

gatsusat a écrit :

putain c'est trop dur de faire appel à une page PHP avec le nom de l'image en parametre ???
 
genre : image.php?img=..\rep\monimage.jpg


faille de sécurité 101: récupérer directement les noms des fichiers en paramètre d'une page


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 25-05-2005 à 10:07:01    

bahhhh il fout un ID dans ce cas et il check tout de une liste ou une table

Reply

Marsh Posté le 25-05-2005 à 10:17:10    

C'est marrant. Je m'attendais un peu à ça, vu ce que j'ai lu ailleurs sur ce forum.
Effectivement, j'ai trouvé ce code sur le net à droite à gauche comme beaucoup le font, mais je ne dis pas que c'est forcément ce qu'il faut faire. Peu importe, je l'ai fait.
Vous avez répondu sans véritablement apporter de solution et avec plus ou moins de dénigrement. Alors bon, je vais voir ailleurs.

Reply

Marsh Posté le 25-05-2005 à 10:19:44    

Le web c'est pas du bricolage de scripts trouvés à droite à gauche.
 
Ca s'apprend.
 
A méditer la dessus tu devrais t'employer ...


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Marsh Posté le 25-05-2005 à 10:19:44   

Reply

Marsh Posté le 25-05-2005 à 10:20:18    

Ben le problème de ce script est qu'il rend totalement impossible la consultation des images si l'ont a pas javascript, et repose sur un bricolage qui cause un popup automatique qui sera bloqué par nos chers bloqueurs de popup :(
Donc déjà les trucs genre :

<a href="javascript:AfficheImage('../../images/casa_appart/appart_06_g.jpg')">


Sont absolument pas bien : mettre du javascript dans l'attribut href est idiot, ce qu'il faut faire, c'est ça :

<a href="../../images/casa_appart/appart_06_g.jpg" onclick="javascript:AfficheImage('../../images/casa_appart/appart_06_g.jpg'); return false">


Comme ça ceux sans JS verront la grande image s'afficher. Et ceux avec JS verront le popup s'afficher (après modification du script pour éviter le désagrément du popup)

Reply

Marsh Posté le 25-05-2005 à 10:37:33    

FlorentG a écrit :

<a href="../../images/casa_appart/appart_06_g.jpg" onclick="javascript:AfficheImage('../../images/casa_appart/appart_06_g.jpg'); return false">



:non:
 

<a href="../../images/casa_appart/appart_06_g.jpg" onclick="AfficheImage(this.href); return false" title="Afficher la version non réduite">


 [:aloy]  
 
On peut même améliorer encore le truc pour faire quelque chose de complètement générique à coup de handlers d'évènements JS [:aloy]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 25-05-2005 à 10:38:58    

Huhu :D Sinon oui pour les handlers auto, beaucoup moins lourdingue :)

Reply

Marsh Posté le 25-05-2005 à 11:05:02    

masklinn a écrit :

faille de sécurité 101: récupérer directement les noms des fichiers en paramètre d'une page


Tu as repetorie les failles de secu les plus courantes ?
On peut avoir la liste ?  :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed