Hola, bueno soy nuevo aqui y pues para empezar quiero presentarme ^^ mi nombre 
es Rene Emmanuel Zamorano Flores o Final 2.0 xD pues bien como diseñador web 
quise empezar a implementar nuevas funcionalidades a mis paginas web, pues bien 
actualmente me encuentro haciendo un pequeño script que recorra todos los 
elementos (nodos) del siguiente documento XML..

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html SYSTEM 
"file:/C:/Archivos%20de%20programa/VertrigoServ/www/pruevas_ajax/XML/sample.dtd">
<?xml-stylesheet type="text/xsl" href="sample.xsl"?>
<html>
    <seccion>
        <titulo>Titulo de ejemplo</titulo> 
        <subtitulo>subtitulo ejemplo</subtitulo>
        <contenido>aki va el contenido y su imagen ke es puedes ver la url del 
y mas texto</contenido>
    </seccion>
    <seccion>
        <titulo>otro titulo de seccion</titulo>
        <subtitulo>otro subtitulo</subtitulo>
        <contenido>link</contenido>
    </seccion>
</html>

Lo que pretendo hacer es una pequeña funcion recursiva que recorra el arbol que 
es el siguiente:

                                html
            ______________________|______________________
           |                                             |
        seccion                                       seccion
    _______|_________                        ____________|____________
   |       |         |                      |            |            |
titulo subtitulo  contenido               titulo     subtitulo     contenido

La idea aqui es usar una funcion recursiva que analize el nodo actual y si este 
tiene hijos se vuelva a llamar para analizar los hijos cuando acabe con ellos 
deveria regresar esta es la funcion...

########## Funcion Analizar XML ############################################
function analizarXML(_nodo){//este argumento que le pasamos equivale a la 
propiedad .documentElement del archivo XML previamente cargado
                             //si escrivieramos _nodo.nodeName nos devolveria 
html (ya lo comprobe ^^)
    if(_nodo.nodeType == 1 && _nodo.hasChildNodes){//si el nodo es de clase 
elemento y tiene hijos
        var _hijos = _nodo.childNodes;//creamos una instancia de la coleccion 
de hijos...
        for(i=0; i < _hijos.length;i++){//este bucle repite la funcion para 
cada hijo
            analizarXML(_hijos[i])//llamamos al primer elemento de la coleccion 
tambien funciona con _hijos.item(i)
         } 
    }
} 

En teoria esta funcion deveria de funcionar revisar si el nodo es tipo 
ELEMENT_NODE y si tiene hijos... despues con el bucle se llamaria a la funcion 
pero con un nuevo nodo(es decir el primer hijo para la primera vuelta el 
segundo hijo para la segunda etc etc) asi adentrandose en el arbol y terminando 
la funcion cuando no encuentre mas hijos ... pero aki esta lo curioso que no lo 
hace en su lugar se llama asi misma chorrocientas mil veces... y me traba el 
explorador... (asi que cuidado si quieren probarla...) la verdad es que ya 
estoy desesperado no estoy muy familiarizado con JS y la verdad no se el porque 
de este error, algun fallo en la sintaxis deje pasar algo no se... espero me 
puedan ayudar...por cierto de momento todo esto solo funciona en IE aun no he 
echo la version para el Zorrito hasta que aya solucionado esto ... ya que como 
sabran mozilla interpreta de un modo un poco diferente XML (toma los espacios 
como hijos y hay que quitar estos... para que no aya problema he oido de un 
metodo normalize pero no se si sea para eso o que tan compatible sea...)

Bueno pues es todo... disculpen si me extendi mucho con la explicacion pero 
queria dejar claro mi punto (espero no acavar confundiendo mas...) y pues de 
antemano les doy a todos las gracias... y pues espero que mi estancia en esta 
lista sea buena tanto ayudando como resiviendo ayuda que si no nos ayudamos 
entre nosotrso quien lo hara? xD

Saludos!!!
ATT Final 2.0

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: 
http://lists.scriptia.net/pipermail/javaescript-scriptia.net/attachments/20070709/74e64172/attachment.html
 
_______________________________________________
javaEScript mailing list
javaEScript@scriptia.net
http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net

Responder a