1. Un temporizador que solo se ejecuta una vez
Copie el código de código de la siguiente manera:
<guión>
//El temporizador se ejecuta de forma asincrónica
función hola(){
alerta("hola");
}
//Ejecutar el método usando el nombre del método
var t1 = ventana.setTimeout(hola,1000);
var t2 = window.setTimeout("hello()",3000);//Usar método de ejecución de cadena
window.clearTimeout(t1);//Eliminar el temporizador
</script>
2. Temporizador de ejecución repetida
Copie el código de código de la siguiente manera:
<guión>
función hola(){
alerta("hola");
}
//Repetir un método
var t1 = ventana.setInterval(hola,1000);
var t2 = ventana.setInterval("hola()",3000);
//Cómo quitar el temporizador
ventana.clearInterval(t1);
</script>
Observación:
Si hay dos métodos en una página y ambos se ejecutan después de cargar la página, pero en realidad no se pueden ejecutar en orden, puede consultar los siguientes métodos para resolver el problema:
Puede agregar un temporizador en el método de carga, configurar un temporizador y "retrasarlo" durante un período de tiempo antes de ejecutarlo. Esto se puede considerar para distinguir el orden de los métodos de carga y ejecución de la página.
En JavaScript, hay dos funciones dedicadas a los temporizadores, a saber:
1. Temporizador de cuenta atrás: timename=setTimeout("function();",delaytime);
2. Temporizador de bucle: timename=setInterval("function();",delaytime);
El primer parámetro "función()" es la acción que se ejecutará cuando se active el temporizador. Puede ser una función o varias funciones. Las funciones pueden estar separadas por ";". Por ejemplo, si desea que aparezcan dos ventanas de advertencia, puede reemplazar "función();" con
"alert('¡Primera ventana de advertencia!'); alerta('¡Segunda ventana de advertencia!');"; y el segundo parámetro "tiempo de retardo" es el intervalo de tiempo en milisegundos, es decir, completar "5000" significa 5 segundos.
El temporizador de cuenta regresiva activa un evento después de que se alcanza el tiempo especificado, mientras que el temporizador de bucle activa el evento repetidamente cuando llega el intervalo de tiempo. La diferencia entre los dos es que el primero solo actúa una vez, mientras que el segundo actúa continuamente.
Por ejemplo, después de abrir una página y desea saltar automáticamente a otra página cada pocos segundos, debe usar el temporizador de cuenta regresiva "setTimeout("function();",delaytime)", y si desea establecer una oración determinada aparecen uno por uno,
Debe utilizar el temporizador de bucle "setInterval("function();",delaytime)".
Para obtener el foco del formulario, se utiliza document.activeElement.id. Úselo if para determinar si document.activeElement.id y el ID del formulario son iguales.
Por ejemplo: if ("mid" == document.activeElement.id) {alert();}, "mid" es el ID correspondiente al formulario.
Minutero:
Se utiliza para especificar un programa que se ejecutará después de un período de tiempo específico.
Ejecución cronometrada en JS, la diferencia entre setTimeout y setInterval y el método de cancelación
setTimeout (Expresión, DelayTime), después de DelayTime, se ejecutará una expresión setTimeout para retrasar un período de tiempo antes de realizar una operación.
setTimeout("función",hora) establece un objeto de tiempo de espera
setInterval (expresión, delayTime), cada DelayTime ejecutará Expression A menudo se puede utilizar para actualizar expresiones.
setInterval("función",tiempo) establece un objeto de tiempo de espera
SetInterval se repite automáticamente y setTimeout no se repite.
clearTimeout(object) borra el objeto setTimeout establecido
clearInterval(object) borra el objeto setInterval
Sólo da dos ejemplos.
Ejemplo 1. Cuando se activa o carga el formulario, genera la cadena palabra por palabra
Copie el código de código de la siguiente manera:
<html>
<cabeza>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312" />
<título>Documento sin título</título>
<script idioma="JavaScript" tipo="texto/javascript">
var str = "Este es un texto de muestra para realizar pruebas";
var secuencia = 0;
var segundo=1000; //Tiempo de intervalo 1 segundo
función de desplazamiento() {
mensaje = str.substring(0, secuencia+1);
document.getElementByIdx_x_x('palabra').innerHTML = mensaje;
secuencia ++;
si (seq >= str.length) seq = 0;
}
</script>
</cabeza>
<body onload="setInterval('scroll()',segundo)">
<div id="palabra"></div><br/>><br/>
</cuerpo>
</html>
Ejemplo 2. Cuando el foco está en el cuadro de entrada, verifique la información del cuadro de entrada con regularidad y no realice la acción de verificación cuando el foco no esté activado.
Copie el código de código de la siguiente manera:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transicional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<cabeza>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312" />
<título>Documento sin título</título>
<script idioma="JavaScript" tipo="texto/javascript">
var segundo=5000; //Tiempo de intervalo 5 segundos
varc=0;
función de desplazamiento() {
c++;
si ("b" == documento.activeElement.id) {
var str="Comprobación programada<b> "+c+" </b>hora<br/>";
if(document.getElementByIdx_x_x('b').valor!=""){
str+="El contenido actual del cuadro de entrada es<br/>><b> "+document.getElementByIdx_x_x('b').value+"</b>";
}
document.getElementByIdx_x_x('palabra').innerHTML = str;
}
}
</script>
</cabeza>
<cuerpo>
<textarea id="b" nombre="b" estilo="altura:100px; ancho:300px;" onfocus="setInterval('scroll()',segundo)"></textarea><br/>><br/ >
<div id="palabra"></div><br/>><br/>
</cuerpo>
</html>
Ejemplo 3. El siguiente es el ejemplo más simple. Aparece una ventana de advertencia después de que expira el temporizador.
Copie el código de código de la siguiente manera:
<html xmlns="http://www.w3.org/1999/xhtml">
<cabeza>
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312" />
<lenguaje de escritura="javascript">
recuento de funciones() {
document.getElementByIdx_x_x('m').innerHTML="¡El cronómetro ha comenzado!";
setTimeout("alert('¡Diez segundos arriba!')",10000)
}
</script>
<cuerpo>
<div id="m"></div>
<input TYPE="botón" valor="El temporizador se inicia" onclick="count()">
</cuerpo>
</html>
Ejemplo 4: salto en el tiempo de cuenta regresiva
Copie el código de código de la siguiente manera:
<html>
<cabeza>
<base href="<%=basePath%>">
<title>Mi página de inicio JSP 'ds04.jsp'</title>
<span id="tiao">3</span>
<a href="javascript:countDown"> </a> Salta automáticamente después de segundos...
<meta http-equiv=actualizar contenido=3;url= '/ds02.jsp'/>
<!--Se inicia el script-->
<script idioma="javascript" tipo="">
función cuenta atrás (segundos) {
tiao.innerText=segundos;
si(--segs>0)
setTimeout("countDown("+segs+")",1000);
}
cuenta atrás(3);
</script>
<!--Fin del guión-->
</cabeza>
Ejemplo 6:
Copie el código de código de la siguiente manera:
<cabeza>
<meta http-equiv="actualizar" contenido="2;url='b.html'">
</cabeza>
Ejemplo 7:
Copie el código de código de la siguiente manera:
<script idioma="javascript" tipo="texto/javascript">
setTimeout("ventana.ubicación.href='b.html'", 2000);
//Se pueden utilizar los dos siguientes
//setTimeout("javascript:location.href='b.html'", 2000);
//setTimeout("window.location='b.html'", 2000);
</script>
Ejemplo 8:
Copie el código de código de la siguiente manera:
<span id="totalSecond">2</span>
<script idioma="javascript" tipo="texto/javascript">
var segundo = document.getElementByIdx_x('totalSecond').innerHTML;
si(esNaN(segundo)){
//...no es un método de procesamiento numérico
}demás{
establecerInterval(función(){
document.getElementByIdx_x('totalSecond').innerHTML = --segundo;
si (segundo <= 0) {
ventana.ubicación = 'b.html';
}
}, 1000);
}
</script>