2013-08-06 26 views
16

Obecnie tworzę stronę internetową do hostowania oprogramowania. To, czego chcę, to dodać do stron projektu to pokaz slajdów z cykli zrzutu ekranu, zmieniając obrazy co 5 sekund. Czy istnieje jakiś sposób na skrypt uruchamiany w przedziale czasu za pomocą tylko JavaScript? ..lub będę musiał uciekać się do alternatywnych metod osiągnięcia mojej pożądanej funkcjonalności. Z góry dziękuję za pomoc!Uruchamiaj funkcję JavaScript w regularnych odstępach czasu

+2

możliwe duplikat [Interval i ustawić interwał Wyczyść] (http://stackoverflow.com/questions/5978519/set-interval-and-clear-interval) –

Odpowiedz

29

setInterval:

function doSomething() { 
    alert('This pops up every 5 seconds and is annoying!'); 
} 

setInterval(doSomething, 5000); // Time in milliseconds 

przekazać go funkcja chcesz nazywa wielokrotnie co n milisekund. (setTimeout, nawiasem mówiąc, będzie wywołać funkcję z timeout).

Jeśli kiedykolwiek chcesz, aby zatrzymać stoper, trzymać setInterval „s zwracanej wartości i przekazać go do clearInterval.

10

Chcesz funkcję setInterval.

setInterval(function() { 
    // This will be executed every 5 seconds 
}, 5000); // 5000 milliseconds 

podstawowa: http://www.w3schools.com/jsref/met_win_setinterval.asp (proszę ignorować odwołanie do parametru "lang")

Bardziej dogłębne odniesienie: https://developer.mozilla.org/en-US/docs/Web/API/window.setInterval

+3

[W3Schools nie jest największym odniesienia, przez way] (http://w3fools.com) – Ryan

+0

Tak, to prawda. Wymienię lepszy. –

+1

W3schools może nie być najdokładniejszy, ale jest łatwiejszy dla oczu i umysłu. Poza tym, kto dopiero odkrywa o setinterval, bardzo skorzystałby na tym, że nie widział kodu c, nie próbował go wypróbować w przeglądarce i nie otrzymał odwołania do organizacji. –

-1
<script> 
var intervalVariable=setInterval(function(){ 
    //Your operation goes Here 
    },1000); // executes every 1000 milliseconds(i.e 1 sec) 

function stopTimer() 
{ 
    clearInterval(intervalVariable); 
} 
</script> 
1

Zmienia datę w div, a czas zmienia się często po 1 s.

setInterval(function(){ 
     var date=new Date(); 
     $('.class').html(date); 
    },1000); 
Powiązane problemy