Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Hacer que sub-menú permanezca abierto al cambiar de página

Estas en el tema de Hacer que sub-menú permanezca abierto al cambiar de página en el foro de Frameworks JS en Foros del Web. Tengo un menú principal y una de sus opciones tiene un efecto de acordeón que hago así: Código: $(document).ready(function(){ $(function(){ $("#accordion").accordion({ active: false, autoHeight: false, ...
  #1 (permalink)  
Antiguo 27/05/2011, 12:06
 
Fecha de Ingreso: noviembre-2010
Mensajes: 27
Antigüedad: 13 años, 5 meses
Puntos: 0
Hacer que sub-menú permanezca abierto al cambiar de página

Tengo un menú principal y una de sus opciones tiene un efecto de acordeón que hago así:

Código:
$(document).ready(function(){
    $(function(){
        $("#accordion").accordion({
            active: false,
            autoHeight: false,
            collapsible: true
        });
    });
});
Cuando alguna de las opciones que se despliegan se selecciona, le agrego una clase .active y esto llama a otro sub-menú que entra con fadeIn:

Código:
jQuery.fn.slideFadeToggle = function(speed, easing, callback){
    return this.animate({opacity: 'toggle', width: 'toggle'}, speed, easing, callback);  
    };

    $(document).ready(function(){

        $("#subNav4").hide();
        $("#us").click(function () {
            $("#subNav1").hide();
            $("#subNav2").hide();
            $("#subNav3").hide();
            $("#subNav4").slideFadeToggle(800);
            $('*').removeClass('active');
            $(this).addClass('active');
            return true;
        });
El problema es que al hacer clic en este último sub-menú y cambiar a una nueva página, tanto el menú acordeón como el que entra con fadeIn desaparecen. ¿Cómo puedo lograr que permanezcan abiertos y asignarles una clase .active para que el usuario sepa qué sección/sub-sección está visitando?

De antemano gracias
  #2 (permalink)  
Antiguo 29/05/2011, 20:19
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: Hacer que sub-menú permanezca abierto al cambiar de página

Código Javascript:
Ver original
  1. $('*').removeClass('active');
Esto por rendimiento es absolutamente lo peor que puede hacer, mejor haga esto:
Código Javascript:
Ver original
  1. $(".active").removeClass('active');
Respecto al problema:

Haciendo de cuenta que cada boton del acordion (para desplegar) tiene la clase "desplegable", seria:

Código Javascript:
Ver original
  1. $('a[href="'+ window.location + '"]').click().closest(".desplegable").click()

Obviamente esto va después de los scripts de acordion y demás.

Etiquetas: javascript, página, time
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 16:22.