Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/11/2007, 19:10
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: detectar falta de javascript con javascript

Un buen aporte.
Sin embargo, aunque la solución es "rápida y simple", sería mejor usar las funciones del DOM.
Considerando que los navegadores que soportan el DOM son

Opera 7+
Mozilla Gecko (Mozilla, Firefox, Netscape 6+)
KHTML/WebKit (Konqueror 2+, Safari, OmniWeb 4.5+)
Internet Explorer 5+
iCab 3+ (2- is passive only)
ICEbrowser
Escape/Evo 5 (partial only [and broken])
Tkhtml Hv3 (partial only [and broken])
NetFront 3+ (partial only)
Netgem 4 browser (NetBox) - not tested
OpenTV - not tested
iPanel MicroBrowser with advanced modules - not tested

( http://www.howtocreate.co.uk/tutoria...omintroduction )

creo que pensar en navegadores que no lo soporten es simplemente desperdiciar recursos.

Una solución respetuosa del DOM, podría ser:

Código:
div = document.getElementById("noJS");
div.parentNode.removeChild(div);
Creo que esto soluciona algunos problemitas, sobretodo en el caso de que a noJS le pongamos bordes o estilos particulares. En algunas situaciones, aunque le eliminemos el texto, sigue ocupando espacio en la página. Sobretodo si se le especifica una altura con height en CSS.

Eliminar el nodo es como borrar el div del HTML, por lo que estos problemas quedan resueltos.

Hay que notar, sin embargo, que se supone que el evento load ( body onload="eliminarDiv()" ) se dispara cuando la página ha terminado de cargarse, no durante. Por lo que si la carga se demora, el div no se eliminará inmediatamente, se use el método que se use.


Saludos.