Heim >Web-Frontend >js-Tutorial >Wie kann ich Textknoten aus einem Element extrahieren, ohne das DOM zu ändern?

Wie kann ich Textknoten aus einem Element extrahieren, ohne das DOM zu ändern?

DDD
DDDOriginal
2024-12-03 21:43:09244Durchsuche

How Can I Extract Text Nodes from an Element Without Modifying the DOM?

Textknoten abrufen, ohne die DOM-Struktur zu ändern

In bestimmten Szenarien ist es erforderlich, den Textinhalt eines Elements zu extrahieren, ohne seine Struktur zu ändern . Beispielsweise im folgenden HTML-Code:

<div>

Wenn die gewünschte Ausgabe darin besteht, den Text „Ich bin Textknoten“ unter Beibehaltung des „Edit“-Tags zu erhalten, ist eine browserübergreifende Lösung erforderlich.

Verwendung von JavaScripts Element.contents() und Node.TEXT_NODE

Um dies zu erreichen, haben wir kann die Eigenschaften Element.contents() und Node.TEXT_NODE von JavaScript nutzen. Hier ist ein prägnanter, aber effektiver Codeausschnitt:

var text = $(".title").contents().filter(function() {
  return this.nodeType == Node.TEXT_NODE;
}).text();

Aufschlüsselung der Lösung:

  • $(".title").contents(): Dies Die Funktion gibt eine Sammlung aller direkten untergeordneten Knoten innerhalb des ausgewählten Elements mit der Klasse „title“ zurück.
  • .filter(): Die Filterfunktion durchläuft jeden untergeordneten Knoten und gibt nur diejenigen zurück, die vom Typ Node.TEXT_NODE sind.
  • .text(): Diese Methode extrahiert den Textinhalt des gefilterten Ergebnisses.

Daher verwenden wir diese Technik kann den Abschnitt „Ich bin Textknoten“ erfolgreich abrufen, ohne die HTML-Struktur zu ändern. Diese Lösung ist mit allen gängigen Webbrowsern kompatibel und gewährleistet eine browserübergreifende Funktionalität.

Das obige ist der detaillierte Inhalt vonWie kann ich Textknoten aus einem Element extrahieren, ohne das DOM zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn