par
Aureusms » 19 févr. 2015, 09:49
Rhaaa... Pas facile sans débugger...
Les contenus ne peuvent pas se superposer, ils peuvent seulement se mettre à la suite avec un SPAN. Je pense plutôt que les SPAN se superposent (à voir dans le DOM avec un debugger de type firebug ou F12 dans les "bons" navigateurs internet ie. firefox (pas Chrome : chrome is bad for you personnal data and it is slower than FF...)
Revenons à ton problème : je pense que le moteur Jquery ne trouve pas le SPAN et c'est pour cela qu'il les superpose (supposition).
Je pense, en effet, que comme 'img' ne fais pas encore parti du DOM ou n'est pas identifié comme tel, il ne peut trouver le SPAN frère en position suivante. Aussi, on peut tenter de créer le SPAN s'il n'existe pas, ou s'il existe de le cacher puis le remplir et l'afficher dans la foulée... Cependant je crois que cela reviendra à la même chose.... Essayes d'analyser le DOM
[javascript]setInterval(function() {
$('img').attr('src','img/' + aDatas);
var span = ($('img').next('span').length == 0) ? document.createElement('span') : $('img').next('span');
$(span).hide('slow').html('Nom du fichier : '+aDatas);
if ($('img').next('span').length == 0)
$(span).insertAfter('img').show('slow');
else
$(span).show('slow');
i++;
if (i == aDatas.length) {
i = 0;
}
}, 500)[/javascript]
Rhaaa... Pas facile sans débugger...
Les contenus ne peuvent pas se superposer, ils peuvent seulement se mettre à la suite avec un SPAN. Je pense plutôt que les SPAN se superposent (à voir dans le DOM avec un debugger de type firebug ou F12 dans les "bons" navigateurs internet ie. firefox (pas Chrome : chrome is bad for you personnal data and it is slower than FF...)
Revenons à ton problème : je pense que le moteur Jquery ne trouve pas le SPAN et c'est pour cela qu'il les superpose (supposition).
Je pense, en effet, que comme 'img' ne fais pas encore parti du DOM ou n'est pas identifié comme tel, il ne peut trouver le SPAN frère en position suivante. Aussi, on peut tenter de créer le SPAN s'il n'existe pas, ou s'il existe de le cacher puis le remplir et l'afficher dans la foulée... Cependant je crois que cela reviendra à la même chose.... Essayes d'analyser le DOM
[javascript]setInterval(function() {
$('img').attr('src','img/' + aDatas[i]);
var span = ($('img').next('span').length == 0) ? document.createElement('span') : $('img').next('span');
$(span).hide('slow').html('Nom du fichier : '+aDatas[i]);
if ($('img').next('span').length == 0)
$(span).insertAfter('img').show('slow');
else
$(span).show('slow');
i++;
if (i == aDatas.length) {
i = 0;
}
}, 500)[/javascript]