Javascript - problème de scan
Résolu
zoby44
Messages postés
818
Date d'inscription
Statut
Membre
Dernière intervention
-
zoby44 Messages postés 818 Date d'inscription Statut Membre Dernière intervention -
zoby44 Messages postés 818 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde, j'ai besoin de créer un petite lightbox. J'utilise fckeditor pour mettre en ligne mes articles, et comme je suis fainéant, je n'ai pas envie d'éditer en html pour rajouter une petit truc genre "onclick='...'" donc j'ai fait un script qui scan les images de la page et qui l'ajoute automatiquement. Mais je bloque.
Voila le script :
Le problème, c'est quand je clic sur une image l'alert() s'ouvre bien, mais il m'indique a chaque fois l'url de la dernière image.
J'ai remplacer la ligne
par
Ça fonctionne nickel sous Firefox, mais pas sous IE (8 et 6).
J'ai aussi remplacer le "obj" par "obj.src" en faisant la modif dans la fonction sLight(). Rien a faire, toujours l'url de la dernière image qui s'affiche.
Bref, j'ai retourné le problème dans tout les sens, rien a faire.
Je tiens aussi a préciser que dans mon div "test", toutes les urls s'affichent correctement.
Si quelqu'un peut me dire d'où ça viens, ce serait génial.
Merci.
Voila le script :
function addEvent(obj,event,fct){ if(obj.attachEvent) obj.attachEvent('on' + event,fct); else obj.addEventListener(event,fct,true); } // Au chargement window.onload = function () { var sImg = document.getElementsByTagName('img'); var n = sImg.length; // On scan toutes les <img... for (i=0; i<n; i++) { var obj = sImg[i]; // On définit l'action pour chaque addEvent(obj,'click',function (){sLight(obj)}); document.getElementById('test').innerHTML += obj.src+'<br>'; } } function sLight(sUrl) { alert(sUrl.src); }
Le problème, c'est quand je clic sur une image l'alert() s'ouvre bien, mais il m'indique a chaque fois l'url de la dernière image.
J'ai remplacer la ligne
addEvent(obj,'click',function (){sLight(obj)});
par
addEvent(obj,'click',function (){sLight(this)});
Ça fonctionne nickel sous Firefox, mais pas sous IE (8 et 6).
J'ai aussi remplacer le "obj" par "obj.src" en faisant la modif dans la fonction sLight(). Rien a faire, toujours l'url de la dernière image qui s'affiche.
Bref, j'ai retourné le problème dans tout les sens, rien a faire.
Je tiens aussi a préciser que dans mon div "test", toutes les urls s'affichent correctement.
Si quelqu'un peut me dire d'où ça viens, ce serait génial.
Merci.
A voir également:
- Javascript - problème de scan
- Scan qr code pc - Guide
- Scan now - Guide
- Scan spotify - Guide
- Scan manga - Forum Réseaux sociaux
- A javascript error occurred in the main process - Forum Matériel & Système