Wie kann ich jQuery die nativen DOM-Elemente zurückgeben, die es einkapselt?Abrufen von nativen DOM-Elementen aus jQuery-Objekten?
Antwort
Wenn Sie Elemente mit jQuery finden, können Sie sie mit dem „get“ Funktion erhalten können:
var regularElement = $('#myElementId').get(0);
Innerhalb eines „.each()“ Funktion, die ‚dieses‘ Zeiger bezieht sich auf einen ‚echten‘ Element:
$('input.special').each(function() {
var type = this.type;
this.value = "exploding balloon";
// etc
})
Die Verwendung von jQuery macht Javascript nicht "anders". Es ist Javascript, und das DOM ist immer noch das DOM.
Ich brauchte eine Minute, um zu verstehen, warum Sie die Funktion get() für das Objekt jquery verwendet haben, aber dann habe ich die Kommentare zur Frage selbst gelesen. Es macht jetzt Sinn. Ich kann sehen, dass get() nützlich ist, wenn es mit Nicht-jQuery-JavaScript integriert wird. –
Aaaaand '$ ('# myElementId') [0]' funktioniert auch. – mattsven
$('myTag').get(0)
gibt das HTML-Element zurück.
Ich nehme an, Sie versuchen zu überprüfen, ob Ihr jQuery-Objekt die erste Instanz von "cheese_tag" ist. Sie können das erste Tag mit dem Selektor :first
finden und dann müssen Sie den Vergleich nicht durchführen. Zum Beispiel, erhalten Sie die erste div
Tag wäre: $('div:first')
. Die vollständige Liste der jQuery-Selektoren finden Sie unter documentation.
Nicht genau ... Ich wollte ein Javascript-HTML-Element-Objekt als Rückgabe bekommen. – mattsven
Andere Leute haben die Frage bereits direkt beantwortet. Verwenden Sie die Methode get().
Die meiste Zeit möchten Sie jedoch jQuery-Methoden verwenden, um die Manipulation durchzuführen, anstatt auf das rohe DOM-Element zuzugreifen und es dann mit "standardmäßigen" JavaScript zu modifizieren.
Zum Beispiel können Sie mit jQuery einfach $ ('mySelector'). AddClass ('myClass') angeben, um einem DOM-Element eine CSS-Klasse hinzuzufügen. Dies ist viel komplizierter (und Browser-spezifisch) mit direkter DOM-Manipulation. Dieses Konzept erstreckt sich auf fast jede andere DOM-Manipulation, die Sie vornehmen möchten.
jQuery verwendet Sizzle Selector Engine *. Sie können es auch alleine verwenden.
* Bestätigt durch Doug Neiner, die es richtig ist, bedeuten;)
Richtig! Fügen Sie einfach sizzle.js hinzu und fügen Sie dann diese Zeile hinzu: 'window. $ = Window.Sizzle'. Und '$ (" cheese_tag ")' gibt '[
Was, nein "Ich bin Doug Neiner und ich stimme dieser Antwort zu"? Hehe. – Sampson
Ich bin Doug Neiner und ich stimme dieser Antwort zu –
A jQuery Objekt ist eine Array artige Hülle um ein oder mehr DOM-Elemente. Um einen Verweis auf die tatsächlichen DOM-Elemente (anstelle des jQuery-Objekts) zu erhalten, haben Sie zwei Optionen. Die erste (und schnellste) Methode Array Notation verwenden:
$("#foo")[ 0 ]; // Equivalent to document.getElementById("foo")
Die zweite Methode ist die .get() Funktion verwenden:
$("#foo").get(0); // Identical to above, only slower.
Sie können auch .get()
nennen ohne Argumente abrufen ein echtes Array von DOM-Elementen.
War mir nicht bewusst, dass Sie nur 'get()' für ein Array aufrufen können. Nett. – mattsven
- 1. Verschieben von Domelementen in Schleife
- 2. nativen Code aus Eclipse anzeigen
- 3. .net nativen Speicher aus
- 4. Abrufen von Daten aus PeopleSoft
- 5. Abrufen von Umgebungsvariablen aus Popen
- 6. Abrufen von Daten aus DB
- 7. Abrufen von Informationen aus Firebase
- 8. Abrufen von Text aus JComboBox
- 9. Vererbung von nativen Objekten
- 10. iOS: keine Berührungen erhaltenAbbrechen beim Abrufen eines nativen Popup-Fensters
- 11. Reagieren nativen, Extrahieren von Daten aus einem Objekt
- 12. Lösen eines nativen Sockets aus der Socket-Klasse von Boost.ASIO
- 13. Zugang SQLite-Datenbank von Plugin von nativen
- 14. Markersymbol aus Markierungsdatensatz abrufen
- 15. Abrufen von Wert aus einzeiligen Perl-Skript
- 16. Abrufen von XY-Daten aus Matplotlib Abbildung
- 17. Abrufen von Daten aus einer mySQL-Abfrage
- 18. Abrufen von analysierten Token aus ElasticSearch-Dokumenten
- 19. Speichern und Abrufen von Daten aus NSMutablearray
- 20. Abrufen von Daten aus Firebase Android Studio
- 21. Abrufen von Feldwert aus Formulareingang generiert dynamisch
- 22. Programmgesteuertes Abrufen von Informationen aus LDAP
- 23. Abfrage Abrufen von Daten aus der Datenbank
- 24. Abrufen von Werten aus einem SharedPreferences-Stringsatz
- 25. Abrufen von Zeichenfolge aus XML XElement-Variable
- 26. Abrufen von Daten aus einem Array
- 27. Abrufen von Daten aus Datenbanken in C#
- 28. Abrufen von Daten aus XML hierarchisch
- 29. Eingeben und Abrufen von Daten aus SQLiteDatabase
- 30. Abrufen von Informationen aus einer Oracle-Datenbank
Was würden Sie sonst noch mit jQuery-Selektoren außer "manipulate elements" machen? Ich meine, deine Frage scheint im Grunde wie "Kann ich jQuery verwenden?" auf die die Antwort "ja" wäre. – Pointy
Warum möchten Sie das tun? Und nein, Ihr Ausdruck funktioniert nicht, da $ ("cheese_tag") ein jQuery-Objekt zurückgibt. – alexn
Sorry, eine bessere Möglichkeit, meine Frage zu stellen, wäre "Kann ich jQuery-Objekte in solche konvertieren, die normales JavaScript manipulieren kann?" Wie in Get jQuery ein Javascript-Objekt für die Manipulation zurückgeben. – mattsven