Bonsoir à tous,
Décidément je suis confronté à pas mal de problèmes sur mon projet, mais je pense que celui-ci est l'un qui me fait le plus mal à la tête...
En fait je cherche à définir dynamiquement des événements pour plusieurs images.
Pour cela, j'exploite un fichier xml qui contient les infos sur les événements.
Voici un bout de code pour illustrer mes propos
Le problème c'est que toutes mes images recoivent les mêmes paramètres (ceux de la dernière boucle).
J'espère avoir été clair.
En vous remerciant grandement pour l'aide que vous pourrez m'apporter,
Dark.
[EDIT]Problème réglé après avoir passé la journée à chercher!!!!!!!!!!
Je vous poste le nouveau code pour que cette solution puisse servir à d'autres...
Modifié par Dark$hadow (07 Feb 2009 - 22:15)
Décidément je suis confronté à pas mal de problèmes sur mon projet, mais je pense que celui-ci est l'un qui me fait le plus mal à la tête...
En fait je cherche à définir dynamiquement des événements pour plusieurs images.
Pour cela, j'exploite un fichier xml qui contient les infos sur les événements.
Voici un bout de code pour illustrer mes propos

for (i=0;i<3;i++)
{
var currentProject = this.docXML.getElementsByTagName("projet").item(i);
var srcVignette = currentProject.getElementsByTagName("imageMiniature").item(0);
var prechargementImageHover = document.createElement('img');
prechargementImageHover.src = srcVignette.getAttribute('srcHover');
var currentVignette = document.getElementById(currentProject.getAttribute('id'));
currentVignette.onmouseover = function() {this.src=srcVignette.getAttribute('srcHover')};
currentVignette.onmouseout = function() {this.src=srcVignette.getAttribute('src')};
currentVignette.parentNode.onclick = function() {navAjax.modifierAncre('creations>'+currentProject.getAttribute('id')); return false;};
}
Le problème c'est que toutes mes images recoivent les mêmes paramètres (ceux de la dernière boucle).
J'espère avoir été clair.
En vous remerciant grandement pour l'aide que vous pourrez m'apporter,
Dark.
[EDIT]Problème réglé après avoir passé la journée à chercher!!!!!!!!!!
Je vous poste le nouveau code pour que cette solution puisse servir à d'autres...
for (i=0;i<3;i++)
{
var currentProject = this.docXML.getElementsByTagName("projet").item(i);
var srcVignette = currentProject.getElementsByTagName("imageMiniature").item(0);
var prechargementImageHover = document.createElement('img');
prechargementImageHover.src = srcVignette.getAttribute('srcHover');
var currentVignette = document.getElementById(currentProject.getAttribute('id'));
currentVignette.srcHover = srcVignette.getAttribute('srcHover');
currentVignette.srcNormal = srcVignette.getAttribute('src');
currentVignette.link = currentProject.getAttribute('id');
currentVignette.onmouseover = function() {this.src=this.srcHover};
currentVignette.onmouseout = function() {this.src=this.srcNormal};
currentVignette.parentNode.onclick = function() {navAjax.modifierAncre('creations>'+this.firstChild.link); return false;};
}
Modifié par Dark$hadow (07 Feb 2009 - 22:15)