Problème document.image.src

Signaler
Messages postés
32
Date d'inscription
mercredi 27 mai 2009
Statut
Membre
Dernière intervention
15 janvier 2010
-
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
-
Bonjour,

J'ai un soucis pour inverser 2 images d'un tableau. J'utilise la fonction document.image mais avec elle je n'arrive pas à changer la source de mon image dans la mémoire du tableau. Voici un bout de code.. 

    Pion = MonTableau[X][Y].substring(11,MonTableau[X][Y].indexOf(".",11));
     
     image = MonTableau[X][Y].substring(MonTableau[X][Y].lastIndexOf("="));
     image = image.substring(2,7);
     alert(image);


     document.images[multislide].src= Pion+".bmp";
     
     document.images[image].src = PionBlanc+".bmp";

     Graphiquement il inverse les images mais dans la mémoire du tableau il ne change pas la source de l'image, du coup quand je clique sur une autre case celle-ci reste la même qu'avant..Je sais pas trop comment expliquer j'espère que j'ai été suffisament clair :)

Merci d'avance

5 réponses

Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015

Je ne suis pas sûr d'avoir compris le pb... a tu essayer un truc du genre...
var oldImg document.getElementById('imageId'), oldSrc oldImg.src;
oldImg.src = "new_img.bmp";
document.getElementById('autreImageId').src = oldSrc;

Après si c'est pas ça précise... perso je comprend pas...

"il ne change pas la source de l'image"

@ tchaOo°

l'homme est un loup pour l'homme... .. .
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
Bonjour,
>>Graphiquement il inverse les images
>>mais dans la mémoire du tableau il ne change pas la source de l'image
parce que tu changes le src de l'image affichée et pas
la "mémoire" du tableau.... si ?   alors  où ?
Cordialement [mon Site] [M'écrire] Bul
Messages postés
32
Date d'inscription
mercredi 27 mai 2009
Statut
Membre
Dernière intervention
15 janvier 2010

Enfaite j'aimerai au début j'initialise mon tableau comme sa :

for(var X= 0;X<Max;X++)
{
 for(var Y=0;Y<Max;Y++)
 {
  if(iNpion==(Max*Max))
  {
   //multislide = "X"+X+"_"+"Y"+Y;
   MonTableau[X][Y] = " " ;


   CaseBlanche = MonTableau[X][Y];
   PionBlanc = MonTableau[X][Y].substring(11,16); // Pion0
  }
  else
  {
   //multislide2 ="X"+X+"_"+"Y"+Y;
   MonTableau[X][Y] = "";
   iNpion++;
  }
 }
}

Donc dans "MonTableau[X][Y]" il y aura """

et moi j'aimerai juste changer la source donc PionX..mais avec document.image[image].src sa ne marche pas..

merci
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
__d'abord, on n'a ni Max, ni iNPion,
ni multislide, ni multislide2...
__évite les noms qui ressemblent à ce que connaissent
le html/javascript ( image par exemple ),
un jour ou l'autre ça joue des tours.
__un ID doit être unique dans une page !

il me semble que tu te compliques la vie.

par exemple, met dans ton tableau 0,1 ou 2
0=case vide,1=pion blanc,2=pion noir
et affiche ce qu'il faut en fonction du contenu
de la case de ce tableau là où il faut.
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015

Pourquoi vouloir changer la source... je comprend pas... c'est normal que tu ne vois pas la modif si tu fais "afficher la source"... le navigateur te renvois le source qu'il a reçu au moment de la réponse à ta requête pas les modif faites à la volé après avec javascript... .. .

Si tu nous expliquais pourquoi tu veux modifier le source de ta page... ou alors tu te mélange les pinceaux au niveau des termes et le mot source que tu utilise n'est pas le bon terme... qu'est ce que tu appel source que tu veux modifier... le lien vers l'image ? si c'est ça je t'ai donné le code plus haut mais comme l'a dit, à juste titre, Bul3 l'attribut id doit être unique à chaque balise... .. .

@ tchaOo°