heu a rien.... lol c'est un résidut
Toujours dans ta première fonction:
Essaie de remplacer par:
Code : Sélectionner tout - Visualiser dans une fenêtre à part setTimeout(function(){charge(cod)},1000);
timeoutCharge étant global..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 clearTimeout(timeoutCharge) timeoutCharge = setTimeout(function(){charge(cod)},1000);
Oui c'est de là que viens le résidut lol, j'ai déjà testé. Ca ne veut pas!
(même si global). :'(
Le code que j'avais mis en haut était une adaptation à ton code, pas au mienEnvoyé par speedev
![]()
Oui je sais...mais je pige pas tout, j'ai pas beaucoup de maitrise de javascript
Essaie à nouveau d'afficher un log des evenements pour être certain de l'endroit où ça bug...Envoyé par speedev
J'ai fais mieux, j'ai fais des alert correctement annotées pour voir les différentes étapes.
Il se trouve qu'avec les alert le bug n'apparait pas.
Avant et après les clearInterval, le tableau passe de plein à vide donc aucun problème.
Le soucis vient du navigateur qui n'a pas le temps d'exécuter les clearInterval d'où un chevauchement de timers qui fait tout planter.
Il va falloire que je trouve ça car le problème est le même pour l'opacité des images....quelle galère!
Lol, pour revenir à mon idée :
Tu instanci mon itérateur sous le nom de variable "nextIterator"
Tu prends mon iterateur, tu lui rajoute une fonction mustClose qui determine, si il faut ou non continuer l'iteration (true ou false)
Code : Sélectionner tout - Visualiser dans une fenêtre à part var nextIterator=new Iterator();
Ensuite, dans la fonction Next en tant que première instruction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function() { return (nextIterator != this) }
Lors de la création de l'itérateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function () { if (this.mustClose()) { this.onEnd() } else { // Mettre ici le reste de la fonction } }
Et la fonction LoadNextIterator :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 newIterator.onEnd=function() { // Effectuer les opérations de suppression LoadNextIterator() }
Lorsque tu voudras changer d'Iterator, il ne te restera plus qu'à faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 function () { // Lance le prochaine itérateur nextIterator.Next(); }
Je vais essayer de te faire un exemple concret... Je reviens
Code : Sélectionner tout - Visualiser dans une fenêtre à part nextIterator=new Iterator(Data);![]()
lol merci parceque j'ai rien compris.
Faudrait que j'attende d'avoir 3 étoiles je crois lol.
Mais ça m'apprendrait pas mal de chose ton truc.
lol, je crois que je vais faire ca demain plus tot, car la je suis mega fatigué (je fais un projet pour utiliser le SOAP et les webService avec Javascript)... J'ai déjà une ébauche mais je comprends que la moitié de ce que je tape
Note que ca marche très bien (pour ce que j'en demande pour l'instant)
pas de problème merci
je me suis attaqué à développer une fonction javascript mathématiques qui structurera le nombre d'image en fonction du div conteneur et donc en fonction de la résolution de l'écran et ça marche!
Il me manque à ce que les marges entre chaque image et bordure soient les mm d'un bout à l'autre...j'ai qlq petites différences..
vive les maths!
Partager