Stato del menu push multilivello da pagina a pagina

Sto tentando di utilizzare un menu push multi-livello che ho trovato qui:

Multi-Level Push Menu

La fonte è disponibile anche lì. Ho adattato la fonte per funzionare PIÙ come voglio. Ho pezzi in php include in modo che ci sia un ricarico minimo di porzioni quando vado da una pagina all’altra.

L’unica parte che non riesco a rimandare è il menu attuale sul lato sinistro. Quando clicco su un link, il menu scompare / completamente crolla. Qualcuno sa come posso adattare questo in modo che lo stato del menu venga salvato durante la navigazione da una pagina all’altra?

Grazie!

È suggerito sul loro blog di cambiare “this.open” in “true” all’interno del metodo “_init”.

_init : function() { ... this.open = true; 

Tuttavia questo non ha funzionato per me!

Invocando il metodo ‘_openMenu ()’ al momento dell’inizializzazione, subito dopo ‘this._init ()’ si espande il menu ma potrebbe potenzialmente portare problemi con il listener di eventi per il click del corpo …

 function mlPushMenu( el, trigger, options ) { this.el = el; this.trigger = trigger; this.options = extend( this.defaults, options ); // support 3d transforms this.support = Modernizr.csstransforms3d; if( this.support ) { this._init(); this._openMenu(); // added } } 

Seconda possibilità:

Se si desidera “salvare” la posizione esatta del menu, è ansible utilizzare il seguente plug-in del menu push multi-livello di jQuery e, quindi, prima di uscire dalla pagina, per determinare lo stato del menu corrente:

var $activeMenu = $( '#menu' ).multilevelpushmenu( 'activemenu' );

Successivamente puoi pubblicare qualsiasi dato da esso (es. ‘Id’)

var menuID = $activeMenu.attr( 'id' );

alla pagina successiva e usarlo lì per trovare ed espandere di nuovo lo stesso livello di menu usando il metodo ‘espandi’.

$( '#menu' ).multilevelpushmenu( 'expand', $( '#' + menuID ) );