12/07/2006, 14:10
|
| | Fecha de Ingreso: julio-2006
Mensajes: 4
Antigüedad: 18 años, 4 meses Puntos: 0 | |
Para concretizar más el problema... sabemos que la función setTimeout ejecuta una sola vez las instrucciones que se pasan como primer argumento, una vez haya transcurrido el tiempo marcado en el segundo argumento. Existe un tercer argumento opcional.
Por ejemplo:
setTimeout("count++';",2000);
Pasados 2 seg. nos redirecciona a la página indicada.
Si las instrucciones que queremos ejecutar incluyen una función con paso de variables, podemos hacerlo del siguiente modo.
setTimeout("nombrefuncion(" + nombrevar + ")",tiempo); //nótese el uso de las comillas
En el código que estoy generando, lo que no funciona es el paso del primer parámetro, que no es más que un método de un objeto sin argumentos.
He probado haciendo
setTimeout(this.Show(), 200); //nótese sin comillas
la llamada la hace correctamente pero no respeta el tiempo de retardo, 200 msegs.
Tampoco funciona por ejemplo
setTimeout(this.+"Show();", 200);
No se pueden existir limitaciones con el paso de objetos.
caricatos
He visto tu web... lo siento pero no he llegado a entender bien tu propuesta. ¿Puedes aclararmela, por favor?
SiR.CARAJ0DIDA
La llamada a la función Show() es recursiva por lo que no puedo redefinir el método dentro de sí misma, ¿no crees? Otra cosa, ¿qué inconveniente tiene usar en tu código el propio this en lugar de me? Y por último, ¿por qué 2000 lo entrecomillas? Quizás haya cosas que se me escapan...
Sigo investigando... gracias |