242 votes

Comment repousser un appel de fonction de 5 secondes ?

Je veux que widget.Rotator.rotate() soit retardé de 5 secondes entre les appels... comment faire dans jQuery... il semble que delay() de jQuery ne fonctionnerait pas pour ça...

533voto

BrunoLM Points 26573

Vous pouvez utiliser le javascript simple, cela appellera votre_func une fois, après 5 secondes :

setTimeout(function() { your_func(); }, 5000);

Si votre fonction n'a pas de paramètres et pas de récepteur explicite, vous pouvez appeler directement setTimeout(func, 5000)

Il y a aussi un plugin que j'ai utilisé une fois. Il a des méthodes oneTime everyTime.

30voto

Phrogz Points 112337
var rotator = function(){
  widget.Rotator.rotate();
  setTimeout(rotator,5000);
};
rotator();

Ou :

setInterval(
  function(){ widget.Rotator.rotate() },
  5000
);

Ou :

setInterval(
  widget.Rotator.rotate.bind(widget.Rotator),
  5000
);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X