Muchas gracias por las respuestas!

Ciertamente mi mensaje debia haberse titulado: "IE ignora los nodos de tipo
texto entre elementos" ya que es firefox el  que lo hacen bien (como de
costumbre).

La función de dustindiaz me ha venido genial, gracias!!

Saludos!

--
Jose Florido
www.avidos.net

----- Original Message ----- 
From: "Choan C. Gálvez" <[EMAIL PROTECTED]>
To: "Andrés G. Aragoneses" <[EMAIL PROTECTED]>
Cc: <[email protected]>
Sent: Tuesday, January 24, 2006 9:32 AM
Subject: Re: [javaEScript] firefox y los espacios en blanco entre elementos


Andrés G. Aragoneses escribió:
> Jose Florido escribió:
>> Hola!
>>
>> Estoy liado con un script que recorre todos los td de un tr y hace
>> cositas con ellos. Me encuentro con que firefox, al contar los
>> nodos hijos de un elemento me dice que tiene 11 hijos, mientras que
>> ie me dice que solo tiene 5.

Firefox tiene razón esta vez (también).

>> Esto ya me habia ocurrido alguna vez y
>> toquetenado lo habia conseguido solucionar añadiendo una
>> comprobacion del tipo de nodo y cogiendo el nodo solo en caso de
>> que sea de tipo 1 (tipo elemento).

Bien pensado.

>> Hoy he buscado algo de información sobre esto y parece que el
>> problema es que firefox entiende los espacios en blanco entre
>> elementos como nodos de texto (tipo 3) y he comprobado que poniendo
>> los elementos sin espacios entre ellos en el codigo fuente se
>> arregla el problema y ambos navegadores se comportan igual. Mi duda
>> es si no existe una forma algo mejor de hacer esto (lo de escribir
>> los elementos sin espacio parece chapucero...), he leido algo sobre
>> un metodo normalize() ¿tiene algo que ver?

Pues no sé, pero como te decía Andrés, puedes utilizar un método
"agnóstico". Échale un ojo a
<http://www.dustindiaz.com/easier-dom-walking-with-cleanwhitespace/>.

Salud,
Choan

>> El script que estoy haciendo podeis verlo en:
>> http://avidos.net/pruebas/anadirfila.html Cualquier idea para
>> mejorarlo en general sera muy bienvenida :D
>
> Dos cosas:
>
> 1) Yo, para desarrollo web en servidor, utilizo un sistema de
> plantillas XSLT que me permite configurarlo, y de hecho lo tengo así,
> de modo que toda la página web completa la devuelva en una sola línea
> y sin espacios innecesarios. Esto, además de ser bueno para el ahorro
> de ancho de banda, podría ayudar en el tema que expones.
>
> 2) Para este tipo de diferencias en la implementación de las
> funciones DOM de los navegadores, lo ideal es hacerse (o encontrar)
> una mini-librería de JavaScript "agnóstico", que devuelva en cada
> caso el valor correcto, y así te olvidas de hackear y hacer cosas
> raras en cada parte de tu código JavaScript que quiera hacer alguna
> cosilla complicada.
>
> Saludos,
>
> Andrés [ knocte ]

_______________________________________________
javaEScript mailing list
[email protected]
http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net

_______________________________________________
javaEScript mailing list
[email protected]
http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net

Responder a