jquery-verschachtelte .jeder
$(".globalTabs").each(function(){
var $globalTabs = $(this);
var parent = $globalTabs.parent('form');
//initiate jQuery UI tabs
$globalTabs.tabs();
var ATBwidth = $globalTabs.parent().outerWidth();
var tabsWidth = 0;
//get total width of all li/tabs
$(".globalTabs .ui-tabs-nav li").each(function() {
tabsWidth += $(this).outerWidth();
});
if(tabsWidth >= ATBwidth){
//doing something here
}
});
die brechen aufgrund der verschachtelten .each
- gibt es einen einfachen Weg, um dieses Problem?
brechen = Funktionalität nach der zweiten Schleife, die sich auf $globalTabs
ist nicht mehr auslösen, weil es nicht definiert ist.
Blöder Fehler:
Nach der zweiten Schleife, in diesem Abschnitt bezog ich auf den Selektor zweimal.
So, mit $(".globalTabs").each(function(){
dies natürlich nicht funktionieren:
$globalTabs.find(".globalTabs .ui-tabs-nav li").hide();
Hatte nichts zu tun mit den Schleifen.
Danke an alle für Eure Hilfe.
Was meinst du, "bricht"?
bearbeitet
bearbeitet
InformationsquelleAutor Jason | 2012-08-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Anstatt den Wert von
this
pass im Wert von.each(index, value)
Vereinbart ist, bearbeitet meine Antwort.
braucht `tabsWidth += $(secondValue).outerWidth();
ändern zu: $(secondValue)
bricht immer noch nach der zweiten Schleife
InformationsquelleAutor dmck
Vielleicht Ihr mehrere
this
Variablen sind immer verwirrt? Versuchen Sie, Argumente in der Rückruf-Funktion statt (http://api.jquery.com/each/):InformationsquelleAutor Blazemonger