ich Learning jQuery 1.3 (Jonathan Chaffer und Karl Swedberg) zu lesen und während Sortiertisch, verwendete sie .get()
vor .sort()
Aufruf und sagteJavascript-Methoden, die nicht von jquery-Objekten aufgerufen werden können?
wir brauchen jQuery-Objekte in einem Array von DOM-Knoten zu transformieren. Obwohl jQuery-Objekte in vielerlei Hinsicht wie Arrays funktionieren, verfügen sie nicht über die verfügbaren systemeigenen Array-Methoden wie .sort().
Code:
$("#sort").click(function() {
var posts = $("#posts_div .post");
posts.sort(function(a, b) {
return ($(a).text()) > ($(b).text());
});
$.each(posts, function(index, post) { $("#posts_div").append(post); });
});
Also habe ich versucht, es zu tun, ohne .get()
zu verwenden, aber verwundert es funktionierte auch ohne .get()
mit neuesten jQuery, aber hat nicht funktioniert mit 1.3
So machte einige Geigen klar
**Not working without .get()
jquery 1.2.6 **
Working with .get()
jquery 1.2.6
Working without .get()
jquery 1.7.2
Working with .get()
jquery 1.7.2
So offensichtlich früher jQuery Objekte nicht genutzt .sort()
gleiche Funktion wie Javascript-Arrays haben? Aber jetzt haben sie ..
Also meine Frage ist, was sind die Funktionen, die die jQuery-Objekte noch nicht unterstützen, so können wir daran denken, vor der Verwendung in Javascript-Arrays zu konvertieren ??
Und ein weiterer Grund, warum ich verwenden jQuery nicht. –
Um den letzten Punkt zu adressieren: Nein, es ist kein jQuery-Objekt. Das Ganze ist ein jQuery-Objekt, das DOM-Elemente enthält, also sind 'a' und' b' (als einzelne Elemente innerhalb des Objekts) DOM-Elemente. –
Sie sollten sich nicht auf undokumentierte Funktionen einer Bibliothek verlassen - sie könnten sich jederzeit ändern.Gehen Sie in diesem speziellen Fall einfach vor und führen Sie ein Array von DOM-Elementen aus, bevor Sie Array-Operationen ausführen. –