Comment différer une commande jquery

Nouveau WRInaute
Bonjour,
Pour le 1er avril 2016, je prépare une parodie d’une rubrique de mon site.
Voici la page où figure le script dont je parle :
http://courstoujours.olympe.in/Induction/Induction2016Bis.htm
La « taque » apparait d’abord avec ses six points rouges fixes. Après deux secondes, une image transparente d’objets métalliques (id= ‘panoplie’) se superpose à la taque tandis que les points rouges (ainsi que la mention ERREUR !) se mettent à clignoter (class=’clignotement’).
Idéalement, les cinq grands cercles et le petit devraient d’abord s’afficher en rouge (class=’TgR’ et ‘TpR’), puis en blanc (class=’TgB’ et ‘TpB’). Notez que les cercles sont des images transparentes (en background-image).
Mais la commande :

Code:
$('.TgR').removeClass('TgR').addClass('TgB');
que j’ai insérée s’applique dès le chargement de la page.
Comment différer (de quelques secondes) cette commande ?

Voici le script jquery (mais une consultation du code-source entier de la page sera plus claire) :

Code:
<script type="text/javascript" >
//<![CDATA[
$(function(){
$('#panoplie').hide(0).delay(2000).show(100);
$('td').delay(2050);
$('.TgR').removeClass('TgR').addClass('TgB');
//Cette commande s'exécute immédiatement
//et devrait s'exécuter après 2 ou 3 secondes seulement
//(en même temps que l'affichage
//de l'image 'objetsmetalliques'=id'panoplie'
blink();
});
function blink(){
$(".clignotement").animate({opacity:1},400).animate({opacity:0},200);
setTimeout("blink()",200);
}
//]]>
</script>
Cordialement.
 
Nouveau WRInaute
franckM a dit:
SetTimeout() ?
Je vous remercie, frankM, pour votre réponse.
Si vous regardez le bout de code que j’ai inséré dans mon billet précédent (baissez l'ascenseur pour voir tout), vous constaterez que SetTimeout y figure déjà, certes pour la fonction "blink".
Il faudrait alors intégrer

Code:
$('.TgR').removeClass('TgR').addClass('TgB');
dans une fonction mais je ne vois pas comment.

En outre, la fonction "blink" est retardée par
Code:
$('td').delay(2050);
et non par SetTimeout.

Cordialement.
 
Discussions similaires
Haut