Bonjour,
Apres avoir parcouru le forum à la recherche d'une réponse à mon problème
Je me permet de poster ma question ici :
Je souhaite ajouter dynamique à des <img ../> un evenement onclick. Pour cela, j'ai essayé les différentes méthodes qui suivent :
img.onclick = nom_fonction(param1,param2)
==> la fonction s'execute sans atteindre le click sur l'imag
img.onclick = fonction(){nom_fonction(param1,param2)}
==> la console javascript n'accepte pas cette syntaxe
img.addAttribute('onclick','nom_fonction('+param1+','+param2+')')
==> fonction uniquement sur firefox
1 2 3 4 5 6
| if (del.addEventListener){ //firefox
del.addEventListener('click',deleteGalerie(idLog,idPhoto), false);
}
else if (del.attachEvent) { //IE
del.attachEvent('onclick', deleteGalerie(idLog,idPhoto));
} |
==> la fonction s'execute automatiquement sur les deux navigateurs
Finalement aucune des différentes methodes ne fonctionnent 
Voici le code des fonctions concernées :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| function deleteGalerie(idLog,idPhoto){
var req = new Ajax.Request("/ajax.php?action=deleteGalerie&idLog="+idLog+"&idPhoto="+idPhoto,{
method: 'get',
onSuccess: function(transport) {
document.getElementById("thumbnails_galerie").innerHTML="";
afficheGalerie(idLog);
}
});
}
function addImage(idLog,idPhoto,desc){
var del = document.createElement("img");
var photo = document.createElement("img");
var divP = document.createElement("div");
del.src = "/img/del.png";
del.className="g_del";
divP.className="g_div";
del.style.cursor="pointer"
source = "/upload.php?action=affiche&objet=logiciel-galerie&id="+idLog+"&idPhoto="+idPhoto;
photo.src = source+'&'+new Date()*Math.random();
photo.id = idLog+'_'+idPhoto;
if (del.addEventListener){ //firefox
del.addEventListener('click',deleteGalerie(idLog,idPhoto), false);
}
else if (del.attachEvent) { //IE
del.attachEvent('onclick', deleteGalerie(idLog,idPhoto));
}
divP.appendChild(photo);
divP.appendChild(del);
document.getElementById("thumbnails_galerie").appendChild(divP);
//del.onclick = function(){deleteGalerie(idLog,idPhoto)}
new Tip(idLog+'_'+idPhoto, desc,{
className: 'darktip'
}
);
} |
Si quelqun a une idée d'où peut venir ce probleme, je suis preneur 
Merci d'avance.
Partager