Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/04/2010, 14:26
Avatar de maycolalvarez
maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 5 meses
Puntos: 1532
Respuesta: Problema con setInterval()

simple, cambias el ámbito de la variable nombre como global (fuera de la función) y preguntas si está vacia para sacar el prompt:

Código Javascript:
Ver original
  1. <script language="javascript" type="text/javascript">
  2.     var nombre='';
  3.     function reloj(){
  4.         if(nombre==''){        
  5.             nombre = prompt("Introduce tu nombre, por favor", "");
  6.         }
  7.         var f = new Date();
  8.         var a = f.getFullYear();
  9.         var m = new Array ("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
  10.         var d = new Array ("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");;
  11.         var h = f.getHours();
  12.         var mi = f.getMinutes();
  13.         var s = f.getSeconds();
  14.         if (h<10){h='0'+h}
  15.         if (mi<10){mi='0'+mi}
  16.         if (s<10){s='0'+s}
  17.         document.getElementById("capaNombre").innerHTML= ('<div style=font-size:25px;>' + 'Hola,' + '<div style=font-size:30px;>' + nombre.charAt(0).toUpperCase() + nombre.substring(1,99) + '</div>');
  18.         document.getElementById("capaReloj").innerHTML= ('Hoy es ' + d[f.getDay()] + ', ' + f.getDate() + ' de ' + m[f.getMonth()] + ' de ' + a + ' y son las ' + h + ':' + mi + ':' + s + '</div>');
  19.     }
  20.     setInterval("reloj()", 1000);
  21. </script>