Foros del Web » Programando para Internet » Jquery »

menu dropdown+jquery+xml

Estas en el tema de menu dropdown+jquery+xml en el foro de Jquery en Foros del Web. hola quiero hacer un menu dropdown con jquery y xml, pero este me esta funcionando mal. el problema es que una vez que entra en ...
  #1 (permalink)  
Antiguo 27/06/2012, 10:50
 
Fecha de Ingreso: julio-2010
Mensajes: 41
Antigüedad: 14 años, 5 meses
Puntos: 7
menu dropdown+jquery+xml

hola
quiero hacer un menu dropdown con jquery y xml, pero este me esta funcionando mal. el problema es que una vez que entra en un sub menu este me lo repite en el nivel anterior. me es un poco complicado explicarlo por lo que les pongo un diagrama para q me entiendan mejor el numero es el orden en que se ejecuta

asi es como lo quiero
menu 1
|-----menu 2
|-----menu 3
| |-------menu 4
| |-------menu 5


y asi es como me sale ahora
menu 1
|-----menu 2
|-----menu 3
| |-------menu 4
| |-------menu 5
|
|------menu 6 (este es el 4 que se repite)
|------menu 7 (este es el 5 que se repite)

aqui esta el js
Código:
 
$(document).ready(function(){
    jQuery.ajax({
        type: "GET",
        url: "paginas/principal.xml",
        dataType: "xml",
        success: function(xml) {
                       
          
        
var $menu = jQuery(xml).find('BARRA_MENU');
            function makeToc($menu) {
                var markup = "";
                function processXml() { 
                    count++;
                    markup += "<li><a href='" + jQuery(this).attr("url") + "'>" + jQuery(this).attr("nombre") + "</a>";                    
                    if (jQuery(this).children().length) {
                        markup += "<ul>";
                        jQuery(this).find("ENLACE").each(processXml);
                        markup += "</ul>";
                    }
                    markup += "</li>";                    
                }
                $menu.children().each(processXml);
                return markup;
            }
            var tocOutput = makeToc($menu);
            jQuery(".menus").html(tocOutput);                                  

        }
    });
});
XML
Código:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="xsl/principal.xsl"?>
<XML>  
    <BARRA_MENU>
  
        <ENLACE nombre="Portada" url="#"></ENLACE>	
	
        <ENLACE nombre=" F T P " url="">
            <ENLACE nombre=" Economia " url="http://www.ftp.cu/"></ENLACE>		
            <ENLACE nombre=" Informatica " url="">	
                <ENLACE nombre=" Redes " url="http://www.ftp.cu/"></ENLACE>
                <ENLACE nombre=" Web " url="http://www.ftp.cu/" >
                    <ENLACE nombre=" Sitios " url="http://www.ftp.cu/"></ENLACE>
                </ENLACE>	
            </ENLACE>
        </ENLACE>
	
        <ENLACE nombre="Actividades" url="#"></ENLACE>				
	
    </BARRA_MENU>
<XML>

Última edición por orlandopc09; 27/06/2012 a las 12:11
  #2 (permalink)  
Antiguo 30/06/2012, 11:47
Avatar de fjrueda  
Fecha de Ingreso: marzo-2008
Ubicación: Bucaramanga
Mensajes: 313
Antigüedad: 16 años, 9 meses
Puntos: 35
Respuesta: menu dropdown+jquery+xml

Orlando .... meterce con esos XML facilitan mucho el trabajo pero cuando uno ya tiene dominado el tema, bien por aplicar en esa direccion.

Le paso in link que a mi me sirvio en algun momento, incluye un ejemplo para descargar.
http://think2loud.com/288-using-jque...drop-down-box/

Etiquetas: ajax, funcion, html, js
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 13:01.