Foros del Web » Programando para Internet » Javascript »

Error incomprensible con innerHTML

Estas en el tema de Error incomprensible con innerHTML en el foro de Javascript en Foros del Web. Hola a tod@s, No sé porque este sencillo código no me funciona: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...
  #1 (permalink)  
Antiguo 04/01/2012, 08:40
Eux
 
Fecha de Ingreso: octubre-2010
Mensajes: 60
Antigüedad: 14 años, 1 mes
Puntos: 0
Error incomprensible con innerHTML

Hola a tod@s,

No sé porque este sencillo código no me funciona:

Código Javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.  
  4.  
  5. <head>
  6. <script type="text/javascript">
  7. if(!navigator.cookieEnabled){
  8.     alert("hola"); 
  9.     document.getElementById("aviso").innerHTML = "sssssssssssssssssss";
  10.     alert("adios");
  11. }
  12. </script>
  13. </head>
  14.  
  15. <body>
  16. <table>
  17.  
  18. <div id='aviso'>   prueba html     </div>
  19.  
  20. </table>
  21. </body>
  22. </html>

La primera idea era rellenar el DIV 'aviso' para avisar al usuario de que no tiene activadas las cookies, pero el javascript que se ejecuta no es capaz de imprimir el segundo alert, con lo que tengo algún problema con la línea del innerHTML, y no veo qué puede ser.

Cualquier ayuda será bienvenida, gracias por anticipado.
  #2 (permalink)  
Antiguo 04/01/2012, 11:58
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 7 meses
Puntos: 528
Respuesta: Error incomprensible con innerHTML

Yo creo que es por que cuando se ejecuta el script de js, el navegador todavía no crea el div que tienes lineas abajo.

Para esto, deberías hacer la comprobación que quieres una vez cargada completamente la página, más o menos así:

Código HTML:
Ver original
  1. <script type="text/javascript">
  2. function comprueba(){
  3. if(!navigator.cookieEnabled){
  4.     alert("hola");  
  5.     document.getElementById("aviso").innerHTML = "sssssssssssssssssss";
  6.     alert("adios");
  7. }
  8. }

luego en el body:

Código HTML:
Ver original
  1. <body onload="comprueba">
  #3 (permalink)  
Antiguo 04/01/2012, 13:19
Avatar de patkoala  
Fecha de Ingreso: julio-2011
Mensajes: 62
Antigüedad: 13 años, 5 meses
Puntos: 19
Respuesta: Error incomprensible con innerHTML

Cita:
Iniciado por ocp001a Ver Mensaje
Yo creo que es por que cuando se ejecuta el script de js, el navegador todavía no crea el div que tienes lineas abajo.
Completamente de acuerdo, aunque yo siempre lo hago así(supongo que por costumbre):
Cita:
window.onload = function() {
if(!navigator.cookieEnabled){
alert("hola");
document.getElementById("aviso").innerHTML = "sssssssssssssssssss";
alert("adios");
}
  #4 (permalink)  
Antiguo 05/01/2012, 04:02
Eux
 
Fecha de Ingreso: octubre-2010
Mensajes: 60
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Error incomprensible con innerHTML

Pues tenéis razón, ya me funciona ok. Gracias por todo.

Etiquetas: funcion, html, innerhtml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:02.