Domanda

Sto usando il plugin jQuery TreeView. Date un'occhiata al "Campione 1 - default" prevista nella pagina demo del plug-in http: // jquery.bassistance.de/treeview/demo/ . Nel mio caso tutte le cartelle ei file sono collegamenti. Se clicco ad esempio sulla "Cartella 2" sarà ampliato prima collassare e poi seguire il percorso di collegamento. Il comportamento che vorrebbe è che solo quelle collassate si espanderanno primo e se già espanso vi rimane così.

Il codice nel plugin (jquery.treeview.js) che permettono di passare il comportamento è il seguente:

66 this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
67 toggler.apply($(this).next());
68 }).add( $("a", this) ).hoverClass(); 

I già capito come ottenere tutti i link, che dovrebbero essere modificati:

$('a').parent().parent().filter('.collapsable')

Il risultato sarà un array di tutti li che sono attualmente pieghevole (espanso): [Li., Li.collapsable]

Ma io non so come procedere da lì :-( Speriamo che qualcuno mi potrebbe aiutare insieme ...

I già cambiato con successo il linkbehavior per il collegamento corrente selezionato (class = selezionato) con questo codice:

    $(".current").click(function(e){
        e.preventDefault();
    });

Molte grazie in anticipo!

Nessuna soluzione corretta

Altri suggerimenti

forse non era chiaro quello che voglio fare in modo cercherò di migliorare il mio verbalizzazione prossima volta ;-)

La risposta alla mia domanda è:

$('li').filter('.collapsable').find('a:first:not(.current)').click(function(e){
            e.stopImmediatePropagation();
        });

Forse aiuta chi è alla ricerca di qualcosa di simile.

Con i migliori saluti !!

UPDATE (la soluzione postato sopra non funziona se l'utente ampliato un nodo senza ricaricare la pagina dopo)

    $('a').click(function(e){
        if ($(this).is('.current')) {
            e.preventDefault();
        } else if ($(this).parent().parent().is('.collapsable')) {
            e.stopImmediatePropagation();
        };          
    });

Questo funziona come ha supposto per. : -)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top