11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Dans mon menu j'ai placé des petites flèches en image juste avant le texte, un peu comme des puces.
Les petites flèches si le lien sur la page n'est pas cliquer reste dans son état "hors action" c'est à dire de couleur bleue et si le lien est cliquer elle devrait changer et devenir rouge
(Deux images gère la flèche)

J'ai beaucoup de mal à faire une fonction javascript pour le faire, j'avais créée une fonction ChangeImage que j'appel sur la balise du lien mais sans succès, je manque cruellement de méthode concernant l'utilisation de javascript,
j'avais fait quelque chose comme ça :

function ChangeImage(cible){
var ths=document.getElementById("image")
var thsSize=ths.length;
for(var i=0; i<thsSize; i++)
if(ths[i].id==cible) ths[i].src='imgshop/fleche-rouge.gif';

else ths[i].src='imgshop/fleche-bleue.gif';
}

Mais la fonction ne trouve pas l'objet ...

Merci d'avance pour votre aide ! Smiley smile [/i][/i][/i]
C'est cette ligne la fautive :
var ths=document.getElementById("image");

Selon ce que tu voulais faire, je présume que c'est soit :
var ths=document.getElementById("image").getElementsByTagName('img');
ou alors :
var ths=document.getElementsByTagName('img');
Merci de ta réponse QuentinC,

J'ai déjà tester avec getElementsByTagName, mais l'ennui c'est que j'ai une autre image illustrant la catégorie du menu et du coup, ben les deux tag img changent au lieu d'un seul et ce même en spécifiant un id....

Bon je viens de refaire un test, j'ai plus de problème quant à cibler l'image mais par contre.... Cela ne fonctionne pas les images des flèches ne changent pas.

Tu pourrais, ou quelqu'un d'autre, m'indiquer plus de précision ? Je pense que c'est :

if(ths.id==cible) ths[i].src='imgshop/fleche-rouge.gif';



else ths[i].src='imgshop/fleche-bleue.gif';

Qui pose problème, soit c'est mal déclarer ou ... autre !
merci ![/i][/i]
Désolée j'ai dit une idiotie, en fait j'avais mal déclaré mon id ... je faisais un test sur le premier lien du menu et en fait j'avais mis mon id sur le deuxième !!

Ca voulait pas fonctionner Smiley smile

Je vais le tester sur tout mes liens et au cas où, ben je reviens !

Merci en tout cas Smiley biggrin