¿Cómo puedo repetir una función doSomething()
cada 5 segundos?Haga algo cada 5 segundos y el código para detenerlo. (JQuery)
También necesito un código que lo haga dejar de hacerlo.
Y el código para ajustar la frecuencia al instante.
¿Cómo puedo repetir una función doSomething()
cada 5 segundos?Haga algo cada 5 segundos y el código para detenerlo. (JQuery)
También necesito un código que lo haga dejar de hacerlo.
Y el código para ajustar la frecuencia al instante.
setTimeout() sólo se pondrá en marcha el comando una vez. En este caso, setInterval() es tu amigo.
var iFrequency = 5000; // expressed in miliseconds
var myInterval = 0;
// STARTS and Resets the loop if any
function startLoop() {
if(myInterval > 0) clearInterval(myInterval); // stop
myInterval = setInterval("doSomething()", iFrequency); // run
}
function doSomething()
{
// (do something here)
}
de código ...
<input type="button" onclick="iFrequency+=1000; startLoop(); return false;"
value="Add 1 second more to the interval" />
Puede usar setTimeout() para esto.
cómo lo paro? ¿Y cómo ajusto la frecuencia sobre la marcha? – steven
Trate jQuery Timers
La última versión está disponible en el sitio jQuery Plugins. http://plugins.jquery.com/project/timers –
Uso
llamadas una función repetidamente, con un retraso de tiempo fijo entre cada llamada a esa función.
para la acción repetida y
Cancela acción repetida que se estableció utilizando setInterval().
para detener ese
<script type="text/javascript">
var t; var timer_is_on=0; var timeout=5000;
function timedCount() {
doSomeThing();
t = setTimeout("timedCount()",timeout);
}
function doTimer() {
if (!timer_is_on) {
timer_is_on=1;
timedCount();
}
}
function stopCount() {
clearTimeout(t);
timer_is_on=0;
}
function changeFreq() {
timeout = 2000;
}
</script>
nice. Cerrar, no cambia la frecuencia sobre la marcha, pero no estoy seguro si eso es posible ahora. – steven
¿Cómo ajusto la frecuencia sobre la marcha? ¿Y qué código detendrá setInterval()? – steven
Ok clearInterval lo detiene, pero ¿qué pasa con la frecuencia? – steven
la frecuencia es el segundo argumento de la función. Ver el enlace al tutorial. – pixeline