jQuery Navigation - Help Needed
-
22-07-2019 - |
Pergunta
Eu estou trabalhando em um local com uma bastante grande de navegação estilo do acordeão (não usar a UI acordeão ).
Há quatro seções sub-menu que alternam aberto quando clicado. Eu tenho o link ativo realçado. A única etapa restante é para manter a corrente aberta sub-menu ativo quando em uma página dentro do sub-menu. Posso mantê-la aberta quando eu estou trabalhando com páginas estáticas, mas neste site a navegação é um inclui arquivo e, portanto, eu preciso de alguma ajuda trabalhar fora de forma dinâmica para manter as seções aberto.
Aqui está o código que estou usando:
<script type="text/javascript">
$(function(){
$('ul#menu3 ul').hide();
$('ul#menu3 > li > a.drop').click(function(){
$(this).parent().children('ul').toggle("slow");
return false;
});
});
</script>
Basicamente o que eu preciso é de alguma maneira para aplicar uma classe para o grupo ativo para que ele será exibido. Qualquer ajuda seria muito apreciada.
Graças.
Solução 3
Este é o que eu acabei usando para resolver o problema:
$(function(){
$('#mainContentTabs').tabs();
$('#subContentTabBoxes').tabs();
$('.interior #subContent > ul > li > a.drop').click(function(){
$(this).parent().children('ul').toggle("slow");
return false;
});
$(window).ready(function() {
$('li.products ul').show();
$('li.technical ul').show();
$('li.tips ul').show();
$('li.quicklinks ul').show();
});
Graças.
Outras dicas
Gostaria de colocar a animação submenu em uma função, por assim chamar o submenu, você usa no seu a href
onclick="showSubMenu('id')"
Essa função iria lidar com o deslizamento. Em seguida, uma vez clicado em uma página que requer um submenu a aparecer, basta adicionar até o fim de sua página um pequeno
<script>document.ready(function() {showSubMenu('parent-id')});</script>
Espero que isso ajude.
C
Você provavelmente precisará aplicar a classe dinamicamente ou como uma variável ou no elemento que eu. por exemplo.
var page = 'ul#menu3';
Em seguida, usar essa variável para desencadear o estado inicial por exemplo.
$('#ul#menu3').show();
Isso seria necessário para executar antes de todos os outros javascript relativa às dropdowns