2016-12-03 1 views
0

Ich verwende materializecss, um Registerkarten zu erstellen. So bin ich an der Stelle, wo ich erkennen möchte, welche Registerkarte geöffnet ist und dann die Benutzeroberfläche mit Javascript oder Jquery konfigurieren.Ermitteln, welche Registerkarte mit jquery ausgewählt ist

Eg

if (tab.index == 0 || 'brands'){ 
    //Configure some UI 
}else if(tab.index == 1 || 'products'){ 
    //Configure some UI 
} 

Der HTML-Teil sieht wie folgt aus:

<ul class="tabs blue-grey darken-2"> 
    <li class="tab col s6"><a class="active" href="#brands" style="color: white;">Brands</a></li> 
    <li class="tab col s6"><a style="color: white;" href="#products">Products</a></li> 
</ul> 

ich bereits manuell Tab geändert haben auf die Schaltfläche wie folgt klicken:

$('ul.tabs').tabs('select_tab', 'products'); 

aber nicht wissen, wie um den Frageteil zu erreichen. Ich hoffe auf Hilfe :) Ich habe viele ähnliche Fragen gestellt, aber keine Lösung gefunden. Wenn die Frage irgendwie dupliziert wird, bitte Kommentar.

Antwort

0

Es gibt einen onShow Rückruf. Siehe http://materializecss.com/tabs.html

Dieser Code ist nicht getestet und es gibt kein einfaches Beispiel, wie man onShow auf der Website des Anbieters verwendet, aber ich hoffe, es wird Ihnen den Weg zeigen. 'some_param' ist, wo Sie die Attribute des Registerkartenobjekts kennen müssen - vielleicht hat es einen Index. Wenn nicht, dann könnten Sie vielleicht differenzierende Klassen zu den ersten und anderen Tabs hinzufügen und jquery .hasClass (classname ') verwenden, um zu entscheiden, was als nächstes passiert.

$(document).ready(function(){ 
    $('ul.tabs').tabs('select_tab', 'tab_id').onShow(function(selectedTab){ 

    if (selectedTab.some_param === some_val){ 
     ...do something 
    } 

    }); 
}); 
+0

Hatte kein Glück. Wie ich es verstehe, sollte die onShow wissen, dass nach dem Öffnen dieser Registerkarte, dann etwas tun. Aber ich habe zum Beispiel 'window.alert (" Clicked tab opened ") versucht;' aber es hat nichts getan. Auch ich konnte die Parameter nicht finden. Ich ging durch ihre .js, das einzige, was ich sah, war var index = 0. Also ich nehme an, der Index beginnt bei 0. –

Verwandte Themen