Bonjour,
j'essaye de développer un petit fil rss. Les informations défilent dans une petite boite de la hauteur d'une ligne et la phrase se regarde 2 secondes puis monte et sort de la boite laissant la place à la suivante le temps de la montée dure 500ms. j'ai écris le script en prenant en compte le nombre variable de phrase qui serai susceptible d'exister.
Voiçi le code plutôt :
function defilementRss(){
var lvl = $('#filInfoS p').length;
for (i = 1, c = lvl; i<c; i++) {
$('#filInfoS')
.animate({top: '-=0px'},{duration:2000, easing:'linear'})
.animate({top: '-=20px'},{duration:500, easing:'linear'});
};
}
$(document).ready(function(){
setInterval('defilementRss()',12000);
});
J'ai voulu utiliser la fonction setInterval pour que l'animation tourne en chaine mais a moins de régler le temps à 12000 ce qui va bien pour 4 phrases, je n'ai pas trouver de solution pour régler le temps en fonction du nombre de phrase.
J'ai aussi voulu utiliser une boucle while à la place de setInterval, le problème c'est que la boucle tourne a toute vitesse à l'infini sans laisser le temps à l'ensemble du jeu d'animation de finir et ça fait bien sur planter le browser du coup.
Pourriez vous m'éclairer ?
Salut,
Avec la fonction callee je pense que sa marche :)
Voila un tuto qui fait disparaitre un nombre infini d'élément tu à juste à adapter avec le comportement que tu veut :)
bonne continuation :)