Para
ejecutar animaciones, refrescos de página o de imágenes,
avisos regulares, etc es necesario disponer de algún
método que ejecute una acción cada cierto tiempo.
Esto lo podemos conseguir mediante el método setInterval(
) que llama a la función indicada como primer argumento
a intervalos regulares de tiempo, estos intervalos vienen dados
en milisegundos por el segundo argumento de la función.
Este método es aplicable a partir de la versiones 4
de los exploradores de Microsoft y Netscape, para versiones
anteriores se debe usar setTimeout( ). El método devuelve
un valor que se usará cuando queramos desctivar el temporizador
usando el método clearInterval(tempo). Conviene advertir
que si la función llamada por el temporizador usa argumentos,
estos deben ser constantes o variables globales, pues la función
es llamada desde el nivel del objeto window y no puede ver
ninguna variable declarada dentro de otras funciones. El siguiente
ejemplo va cambiando el origen de un imagen cada 5 segundos:
var imgActual = 0;
var listaImg = new Array('im1.gif', 'im2.gif','im3.gif')
function cambiarImg( ){
if (document.images['anim'] == null) return;
document.images['anim'].src = listaImg[imgActual];
imgActual++;
if (imgActual == listaImg.length)
imgActual = 0;
}
timer = setInterval("cambiarImg()", 5000);;
Se supone que en la página existe una imagen con
el atributo name igual a anim, es decir algo así: <img
src="'img1.gif" name="anim">