[jQuery] Function avec setTimeout ne fonctionne qu'une fois
fartounet
Messages postés
56
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous,
Je suis en train de faire une fonction qui devra être appelée pour chaque élément possédant une même classe comme par exemple :
J'ai donc une fonction écrite en jQuery doit s'exécuter toutes les secondes.
Je vous laisse voir mon script :
Évidemment elle n'est pas appelée, je fais donc une requête lorsque la page est prête :
Le premier appel fonctionne bien, j'ai le bon retour sur la console.
Les suivants sont vides.
J'aimerai savoir pourquoi et comment résoudre ce problème ?
Merci d'avance. :)
Je suis en train de faire une fonction qui devra être appelée pour chaque élément possédant une même classe comme par exemple :
<div class="maClasse">Message 1</div> <div class="maClasse">Message 2</div> <div class="maClasse">Message 3...</div>
J'ai donc une fonction écrite en jQuery doit s'exécuter toutes les secondes.
Je vous laisse voir mon script :
jQuery.fn.maFonction = function()
{
console.log($(this).text());
setTimeout(arguments.callee, 1000);
}
Évidemment elle n'est pas appelée, je fais donc une requête lorsque la page est prête :
jQuery(document).ready(function($)
{
$('.maClasse').each(function()
{
$(this).maFonction();
});
});
Le premier appel fonctionne bien, j'ai le bon retour sur la console.
Les suivants sont vides.
Message 1 Message 2 Message 3 ...
J'aimerai savoir pourquoi et comment résoudre ce problème ?
Merci d'avance. :)
A voir également:
- [jQuery] Function avec setTimeout ne fonctionne qu'une fois
- Paiement 4 fois cdiscount impossible ✓ - Forum Consommation & Internet
- Téléphone sonne 1 fois puis messagerie - Forum Mobile
- Imprimer plusieurs fois la même image sur une page ✓ - Forum Logiciels
- Tv lg ne s'allume plus voyant clignote 3 fois - Forum Ecran
- Sonne une fois et messagerie - Forum Mobile
1 réponse
Bonjour
setTimeout est bien fait pour ne fonctionner qu'une fois, tu ne voulais pas utiliser setInterval plutôt ?
setTimeout est bien fait pour ne fonctionner qu'une fois, tu ne voulais pas utiliser setInterval plutôt ?