Foros del Web » Programando para Internet » Jquery »

Menu Accordion javascript + jquery

Estas en el tema de Menu Accordion javascript + jquery en el foro de Jquery en Foros del Web. Hola a todos! Tengo un problema con un menú accordion que implementé en una página web que hice, el menú está aquí es el de ...
  #1 (permalink)  
Antiguo 13/09/2012, 07:35
 
Fecha de Ingreso: septiembre-2012
Mensajes: 1
Antigüedad: 11 años, 7 meses
Puntos: 0
Menu Accordion javascript + jquery

Hola a todos!

Tengo un problema con un menú accordion que implementé en una página web que hice, el menú está aquí es el de la barra gris con letras verdes >> [URL="Menu Pagina Web"]http://www.matri-usa.com/products.html[/URL]

Yo usé el lksmenu que está en este tutorial [URL="lksmenu"]http://www.tutorialjquery.com/acordeon-menu-jquery-muy-facil-de-implementar/[/URL]

Mi duda va con respecto al funcionamiento, en el site se muestran diferentes tipos de macetas y lo que quiero lograr es que cuando le de click a una de ellas (ejemplo: New Arrivals > Bina), quiero que el menú se quede abierto en la página en la que estoy con el link resaltado en verde, que se quede abierto y no se cierre cada vez que cambie de producto.. para que los usuarios sepan en que producto están.

Sino, que otro menú podría implementar que se comporte exactamente así, que se quede abierto en la página en la que estoy?

Gracias de antemano y saludos . Les dejo el código javascript del Menu:

Código:
/* @version 1.1 lksMenu
 * @author Lucas Forchino
 * @webSite: http://www.jqueryload.com
 * lksMenu.
 * jQuery Plugin to create a css menu
 */
 
(function($){
    $.fn.lksMenu=function(){
        return this.each(function(){
 
            // we get the menu element in this case is the menu class, we are going to run the menu calling the funcion
           //  like this $('.menu').lksmenu()
 
            var menu= $(this);
 
            //We can leave open item if the tab is currently active (thanks Nikola)
            menu.find('ul li ul.active').slideDown('medium');
            // we look for the main links and we add a click event
            menu.find('ul li > a').bind('click',function(event){
                // if the main option is link we execute the href value.
                // (thanks Nikola)
                var ahref = $(event.currentTarget).attr('href');
                if(ahref!='#'){
                    window.location.href = ahref;
                }else{
 
                // we take the link clicked by the user
 
                var currentlink=$(event.currentTarget);
 
                // if the ul has the active class, that means its open so we close it.
 
                if (currentlink.parent().find('ul.active').size()==1)
                {
                    currentlink.parent().find('ul.active').slideUp('medium',function(){
 
                     //and we remove the class
                    currentlink.parent().find('ul.active').removeClass('active');
                    });
                }
 
                // si none of the options are open
 
                else if (menu.find('ul li ul.active').size()==0)
                {
 
                    // we open the current ul without close anything
                    show(currentlink);
 
                }
                else
                {
 
                    // if there is an open element , we find it, and we close it with a fade effect
 
                    menu.find('ul li ul.active').slideUp('medium',function(){
 
                        // and of couse we remove the class
 
                        menu.find('ul li ul').removeClass('active');
 
                        // we open the current link using the show function
                        show(currentlink);
                    });
                }
             }
            });
 
            // this function open the links it just a support funcion, we could include de code inside
           // the main function , but is better put it here for future modifications.
 
            function show(currentlink){
                currentlink.parent().find('ul').addClass('active');
                currentlink.parent().find('ul').slideDown('medium');
            }
        });
    }
})(jQuery);

Etiquetas: menu-acordion, menu-desplegable, vertical-menu
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:55.