Ich habe das jQuery-Objekt erweitert, um das innere HTML zurückzugeben ...
%Vor%Gibt es einen Grund, warum dies nicht das Standardverhalten ist? Bricht das etwas?
Erstens, ich sehe nicht, wie es viel brechen würde, außer für Typprüfungen, die darauf angewiesen sind, jQuery-Objekte in eine Zeichenfolge zu zwingen, und übereinstimmenden Text in dieser Zeichenfolge. Liege ich damit falsch?
Dies gibt die outerHTML
aller Elemente in einer Menge, verkettet, zurück. Macht das für irgendjemanden Sinn? Für mich ist das ziemlich sinnvoll.
Object.toString
gibt a zurück Zeichenfolge, die das Objekt darstellt (aus dem Dokument).
Wenn Sie über ein jQuery-Objekt sprechen, ist der erwartete Rückgabewert für Object.toString
"[object Object]"
.
HTML HTML wäre einfach ein schlechtes Design und könnte Dinge kaputt machen.
Außerdem ist es sinnvoll, verschiedene explizite Methoden zu verwenden, je nachdem, was wir von einem jQuery-Objekt abrufen möchten: .html()
für HTML .text()
zum Entfernen von Tags.
Nun, jQuery-Objekt ist für viel mehr als nur .html
zu Hause. Wenn jQuery toString
implementieren sollte, sollte es generisch genug sein, um basierend auf dem Selektor im jQuery-Objekt zurückzukehren.
Beispiel: Wenn der Selektor mehrere Elemente ausgewählt hat Die Version, die Sie haben, würde einfach den HTML-Inhalt der ersten Elemente zurückgeben.
Also versuche ich zu sagen, dass das toString
nicht so einfach ist, wie du denkst, und ich könnte mir auch keine große Verwendung für toString
vorstellen.
Tags und Links javascript jquery