|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Nouveau Membre du Club
![]() Inscription : mars 2010 Messages : 82 ![]() |
Bonjour,
Je suis en train de développer un petit lecteur d'images en pur Javascript, et je voudrais que vous m'aidiez sur un bug dont j'ignore totalement l'origine. Lorsque je clique sur une image miniature,l'image originale doit apparaître avec des attributs comme src ou className. Sous Firefox et le reste ça marche, mais pas sous IE : il me fait apparaître les images mais avec aucun attribut. Dans le DOM j'ai que des <img /> vides. Voici le code de mon API : Code :
Code :
Merci. |
||||
|
|
00
|
|
|
#2 | ||||||||
![]() ![]() Inscription : janvier 2011 Messages : 2 930 ![]() |
Bonjour,
il y a beaucoup à dire sur le code et notamment la non utilisation du mot clé var, qui outre le fait qu'elle limite la portée des variables, aide fortement les personnes qui doivent analyser un code pour le déboguer et leur permet d'un rapide coup d'oeil de savoir d'où vient celle ci. En second il est surprenant de voir une ligne tel que suivi immédiatement d'une fonction qui /* Fonction qui gère la compatibilité des événements */ sans même l'utiliser pour ajouter un événement sur le onload de window. Il semble qu'un aurait été plus élégant. Venons en à ton problème... IExplorer gère un event global alors que FireFox et d'autres gère un event pour chaque objet. Tout ceci pour dire que ton problème vient de là. Tentative d'explication claire... - Lorsque tu ajoutes un événement à un objet, et qu'il se produit, FireFox sait que c'est l'objet lui même qui l'a déclenché puisque c'est comme cela qu'il les gère et l'appel à this dans la fonction ne lui pose pas de problème de reconnaissance. - IExplorer lui sait que l'événement à été déclenché mais l'appel à this reste dans le contexte global et donc s'applique à window. Il est plusieurs solutions à ton problème la première mettre directement sur le onclick des images l'appel à ta fonction Code :
Code :
si tu tiens à utiliser cette syntaxe Code :
Code :
j'en passe et des pas forcément meilleur. Pas sûr que cela soit bien compréhensible... |
||||||||
|
|
20
|
|
|
#3 | ||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
C'est plutôt la compréhension de l'ensemble qui est ardue quand on découvre. ^^
Moi, je trouve tes explications utiles et détaillées ![]() (par contre, je te le dis, le prends pas mal, hein ^^ mais à chaque fois que je consulte un thread auquel tu as participé, va savoir pourquoi, je me sens toujours un peu interdit de séjour *tiens où est mon briquet* )Autre chose, 3 petites remarques pour chok371 cette fois ^^ 1) comme paramètre de createElement, utilise plutot les noms canoniques des balises (donc en MAJ) 2) Code html :
<img src="img/img-simpleBOX/small/desert.jpg" width="200" height="200" alt="Désert" />
![]() 3) qu'est-ce que c'est que ... ( Code javascript :
)
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||
|
|
10
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Inscription : mars 2010 Messages : 82 ![]() |
Merci NoSmoking !
Pour romain, les messages en forme de blague et moquerie de ce genre je m'en passerais bien la prochaine fois, merci d'avance ! Je répondrais même pas car j'ai de toute façon rien capté... |
|
|
00
|
|
|
#5 | |||||
![]() ![]() Inscription : janvier 2011 Messages : 2 930 ![]() |
Citation:
Code :
Code :
|
|||||
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Inscription : mars 2010 Messages : 82 ![]() |
Encore merci !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com