Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marcelo2605

[Resolvido] Menu que não se atualiza com a página

Recommended Posts

Criei um menu onde usei jQuery para fazer com que os itens abram submenus.

 

Todas as páginas carregam dentro do mesmo arquivo index.php através de query string.

 

O problema é que, quando a página é carregada, o menu, que estava todo aberto, se fecha no seu estado normal.

 

Como posso fazer para que ele não se altere quando a página for carregada?

Compartilhar este post


Link para o post
Compartilhar em outros sites

VOcê poderia passar um query pela programação, ou já que está usando jQuery, pode usar o plugin de cookies ou fazer cookies sem frameworks, ai quando clicar passa o cookie e vai sempre recuperando e igualando para ver se está presente ou não

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ted, então se eu usar o jquery cookies consigo manter o menu, como o usuário deixou, em todas as páginas do site? Mesmo se houver carregamento?

 

Pesquisando na web, encontrei o que preciso! Mas falta um detalhe.

 

O script é esse:

 

$('#menu li:has(ul) a').click(function() {
   $(this).next().toggle();
   if ($(this).next().is(':visible')) {
       $.cookie($(this).text(), 'expanded');
   }

   if ($(this).next().is(':hidden')) {
       $.cookie($(this).text(), 'collapsed');
   }
});

$('#menu > li').each(function() {
   	var verticalNav = $.cookie( $(this).children('a').text() );
   	if (verticalNav == 'expanded') {
       	$(this).find('ul').show();
   	}
});

 

Basicamente, ele adiciona o texto "expanded" quando o subitem é aberto e o texto "collapsed" quando é fechado. Essas informações são resgatadas pelo cookie quando a página é carregada.

 

O problema é que eu tenho sub-subitens. Então, quando o subitem é aberto, ao carregar a página, todos os seus sub subitens também se abrem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.