Maison >interface Web >js tutoriel >Comment récupérer uniquement le contenu d'un nœud de texte à partir d'un multi-navigateur d'éléments HTML ?

Comment récupérer uniquement le contenu d'un nœud de texte à partir d'un multi-navigateur d'éléments HTML ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-03 09:45:131006parcourir

How to Retrieve Only Text Node Content from an HTML Element Cross-Browser?

Récupération du nœud de texte d'un élément entre navigateurs

En HTML, obtenir le contenu textuel d'un élément peut être délicat lorsqu'il contient à la fois du texte et d'autres éléments. Pour extraire efficacement le nœud de texte, une solution multi-navigateurs est requise.

Problème :

Considérez la structure HTML suivante :

<div class="title">
   I am text node
   <a class="edit">Edit</a>
</div>

Le but est de récupérer le nœud texte "Je suis un nœud texte", tout en préservant l'ancre "Editer". tag.

Solution :

Ceci peut être réalisé en utilisant le framework jQuery :

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

Ce code :

  1. Sélectionne l'élément avec la classe "title".
  2. Obtient son contenu en utilisant la méthode contents() méthode.
  3. Filtre le contenu à l'aide de la méthode filter(), en ne conservant que les nœuds de texte (nodeType == Node.TEXT_NODE).
  4. Récupère le contenu texte des nœuds filtrés à l'aide de la méthode text() méthode.

En conséquence, la variable text ne contiendra que le nœud de texte souhaité, "Je suis un nœud de texte."

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn