Kann dies auf eine präzisere Art geschehen?
%Vor%Ich kann nur daran denken, was immer noch ziemlich ausführlich ist:
%Vor%Bietet jQuery für diesen Fall etwas Besseres? Ich kann es nicht finden.
Um einige der wiederkehrenden Fragen in den Kommentaren zu beantworten:
src[i]
ist bereits ein jQuery-Objekt, das Aufrufen vonjQuery(src[i])
tut nichts.
Nein, es ist ein einfacher DOM-Knoten ohne jQuery-Wrappings.
Nur aus Neugier, warum überhaupt?
Denn danach muss ich ziemlich viel mit jedem einzelnen Element herumspielen. Zum Beispiel muss ich über alle von ihnen gehen, um den höchsten zu finden, und dann den Rest von ihnen auf die gleiche Höhe setzen. Danach muss ich alle ihre Breiten erhalten und einige Layouts basierend darauf ausführen (so erhält jedes Element seine X- und Y-Koordinaten basierend auf den Breiten anderer Elemente). Etc.
All diese Manipulationen werden einfacher durchgeführt, wenn ich die von jQuery zur Verfügung gestellten Kurzbefehle verwenden kann, aber das bedeutet, dass ich jedes Element einzeln umbrechen muss ( $('div')
hat nur einen Wrapper um alle von zurückgegeben) Sie). Und da ich jedes Element mehrmals besuchen muss, möchte ich die Leistung steigern, indem ich jedes einzelne Element nicht nur bei jedem Besuch einpacke.
Genau dafür steht map()
.
Sie durchlaufen jedes Element und wenden eine Funktion auf das Element an und schieben es auf ein neues Array.
oder zur besseren Lesbarkeit
%Vor%Tags und Links jquery