Suggerimenti per un menù dinamico visualizzato come TAB

4 contenuti / 0 new
Ultimo contenuto
Suggerimenti per un menù dinamico visualizzato come TAB

Salve,

vorrei realizzare una versione a TAB di un menù.

L'idea è di creare una lista (principale) le cui voci sono le Tab e i rispettivi sottomenù (liste annidate per ciascuna voce) come contenuto da mostrare al click sulle voci principali.

Avrei anche una vaga idea di come sfuttare jquery per la situazione: la transizione dovrebbe avvenire al click sui tab e non dovrebbe prevedere il refresh della pagina; deve solo mostrare del materiale già caricato e nascosto.

Il problema è che dovrei intercettare e far override della funzione che crea solo quel singolo menù (ma non so se sia possibile).

Ho trovato questa soluzione che prende in esami i Primary link:

http://templates.m42.hu/blog/2007/08/tabular-menu-items-in-drupal

Mi chiedo se esiste qualcosa per fare lo stesso con un qualunque altro menù creato tramite il modulo standard omonimo.

Ciao!

Forse ho trovato ma avrei bisogno di un consiglio da un esperto di Jquery!

come posso usare .each per sostituire le classi di una lista con un suffisso nemerico??

Esempio, prendere questo markup:

<ul>
<li class="leaf">Elemento</li>
<li class="leaf">Elemento</li>
<li class="leaf">Elemento</li>
<li class="leaf">Elemento</li>
</ul>

e farlo diventare con jQuery:

<ul>
<li class="child_1">Elemento</li>
<li class="child_2">Elemento</li>
<li class="child_3">Elemento</li>
<li class="child_4">Elemento</li>
</ul>

NB il numero degli elementi "child" non è fisso ma variabile.

Grazie....

facciamo che anche la tua ul ha una classe (per esempio "parent")

<ul class="parent">

il jquery dovrebbe essere tipo
$(".parent").children().each(function(k,v){
$(v).removeClass("leaf").addClass("child_"+(k+1))
});

L'ho scritta senza testarla, ma cmq puoi guardarti le funzioni addClass e removeClass sul sito di jquery :D

...sul filo di lana... ho risolto con:

$("ul li").each(function(index) {
var ptabname = ('child_' + index);
$(this).removeClass("leaf");
$(this).addClass(ptabname);
});

Grazie Comunque!