Qual è il modo più semplice per chiamare una funzione ogni 5 secondi in jQuery?

JQuery, come chiamare una funzione ogni 5 secondi.

Sto cercando un modo per automatizzare il cambio delle immagini in una presentazione.

Preferisco non installare altri plugin di terze parti se ansible.

Non hai bisogno di jQuery per questo, in semplice javascript, il seguente funzionerà!

window.setInterval(function(){ /// call your function here }, 5000); 

Per fermare il ciclo puoi usare

 clearInterval() 

è ansible registrare un intervallo sulla pagina utilizzando setInterval, ovvero:

 setInterval(function(){ //code goes here that will be run every 5 seconds. }, 5000); 

Solo un piccolo consiglio per la prima risposta. Se la tua funzione è già definita, fai riferimento alla funzione ma non chiamarla !!! Quindi non mettere parentesi dopo il nome della funzione. Proprio come:

 my_function(){}; setInterval(my_function,10000); 

Le funzioni sopra menzionate vengono eseguite indipendentemente dal completamento o meno di una chiamata precedente, questa viene eseguita dopo ogni x secondi una volta completata l’esecuzione

 // IIFE (function runForever(){ // Do something here setTimeout(runForever, 5000) })() // Regular function with arguments function someFunction(file, directory){ // Do something here setTimeout(someFunction, 5000, file, directory) // YES, setTimeout passes any extra args to // function being called } 

Un buon esempio dove sottoscrivere un setInterval (), e utilizzare un clearInterval () per fermare il ciclo per sempre:

 function myTimer() { console.log(' each 1 second...'); } var myVar = setInterval(myTimer, 1000); 

chiama questa linea per fermare il ciclo:

  clearInterval(myVar); 

Sia setInterval che setTimeout possono funzionare per te ( come @Doug Neiner e @John Boker hanno scritto entrambi ora puntano a setInterval ).
Vedi qui per qualche spiegazione in più su entrambi per vedere quali suite hai e come fermarli.

puoi usare window.setInterval e il tempo deve essere definito in millisecondi, in questo caso la funzione chiamerà dopo ogni secondo (1000 millisecondi)