Actualmente estoy tratando de entender un poco de JavaScript.Looping setTimeout
Lo que yo quiero es un texto que se imprimirá en la pantalla seguido de un recuento de un número dado, así:
"Prueba"
[1 seg. pausa]
"1"
[1 seg. pausa]
"2"
[1 seg. pausa]
"3"
Ésta es mis JS:
$(document).ready(function() {
var initMessage = "Test";
var numberCount = 4;
function count(){
writeNumber = $("#target");
setTimeout(function(){
writeNumber.html(initMessage);
},1000);
for (var i=1; i < numberCount; i++) {
setTimeout(function(){
writeNumber.html(i.toString());
},1000+1000*i)};
};
count();
});
Ésta es mi marcado:
<span id="target"></span>
cuando me hacen la página, lo único que consigue es " Prueba "seguido de" 4 ".
No soy genio de JavaScript, por lo que la solución podría ser bastante fácil. Cualquier sugerencia sobre lo que está mal es muy apreciada.
Puede jugar con mi ejemplo aquí: http://jsfiddle.net/JSe3H/1/
Tal vez te gustaría declarar 'writeNumber' ya que es una implícita mundial actualmente. – pimvdb
¡Buena captura! Actualizado. –
¡Muchas gracias por ayudarme! :) – timkl