-1
votes

Comment trouver le dernier noeud de texte de l'élément

?

Dans l'extrait de code suivant, j'ai besoin d'obtenir le noeud de texte qui est le dernier élément enfant. xxx pré>

Je dois sélectionner le nœud texte la valeur Conclusion de l'approche de revenu code>, le seul accessible est

code>, les éléments à l'intérieur de la balise

code> sont dynamiques. p>

Ceci est un autre HTML. P>

var $html = `<div>
                            <p class="western" style="margin-bottom: 0.14in">
                              <font color="#000000"><font face="Arial, serif">
                                <font size="1" style="font-size: 8pt">The client has specifically....</font>
                             </font>
                            </p>
                            <p class="western" style="margin-bottom: 0.14in">
                                <font color="#000000"><font face="Arial, serif">
                                    <font size="1" style="font-size: 8pt">The client has specifically....</font>
                                </font>
                            </p>
                        </div>`;

                $html.find('p').each(function(){

                    $(this).contents().filter(function(){
                        return this.nodeType === 3; // Text node
                    }).each(function(){

                        var f = $(this).parent().css('font-size');

                        if(f && f.trim() != '')
                            $(this).closest('p').css('font-size', f);
                    });                    
                });


2 commentaires

Est-il possible d'avoir autre chose que comme dernier enfant?


@Salmana Oui, ce snippet HTML provenait d'une RTF au convertisseur HTML, j'ai besoin de donner la même taille de la police à

comme son note de texte


4 Réponses :


0
votes

Vous pouvez utiliser une chaîne de sélecteur pour trouver tous les éléments avec un attribut code> style code> qui sont des descendants d'un p code>. Vérifiez que l'attribut a un la taille de la police code> et que quelque chose est à l'intérieur de l'élément, puis revenez au p code>:

p>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p class="western" style="margin-bottom: 0.14in">
  <font color="#000000">
    <font face="Arial, serif">
      <font size="1" style="font-size: 8pt">
        <b>The value conclusion of the Income Approach</b>
      </font>
    </font>
  </font>
</p>


<p class="western" style="margin-bottom: 0.14in">
  <font color="#000000">
    <font face="Arial, serif">
      <font size="1" style="font-size: 8pt">The client has specifically....</font>
    </font>
  </font>
</p>


6 commentaires

Impossible d'utiliser 'P police [style] comme sélecteur, il peut être utilisé p> b Tags Le seul sélecteur peut être utilisé est $ (' P ')


Il suffit de supprimer la partie de la police puis


Cet extrait HTML provenait d'un RTF au convertisseur HTML, j'ai besoin d'offrir la même taille de police sur

comme code de police de nœud de texte


Le seul sélecteur que je peux est $ ('p')


Pourquoi? Puisque vous voulez seulement trouver des éléments qui ont des ancêtres avec style S, p [style] est le meilleur moyen d'aller


Si cela ne fonctionne pas pour vous, veuillez éditer plus d'exemples dans la question, afin que nous puissions voir quel est exactement le problème



-1
votes

Vous pouvez obtenir le texte par simplement $ ('. Western'). Trouver ('*'). Dernier (). Texte ()


0 commentaires

0
votes

Voir si ce petit code vous aide.

p>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p class="western" style="margin-bottom: 0.14in">
  <font color="#000000"><font face="Arial, serif">
    <font size="1" style="font-size: 8pt">The client has specifically....</font>
 </font>
</p>


0 commentaires

0
votes

En supposant le dernier élément enfant em> est le dernier élément qui n'a pas de noeuds d'enfants, vous pouvez le faire:

p>

<!--
WARNING: enabling stacksnippets console causes this
script to stall. Do not enable "show console", look
at your browser's console instead.
-->

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<p class="western" style="margin-bottom: 0.14in">
  <font color="#000000">
    <font face="Arial, serif">
      <font size="1" style="font-size: 8pt">
        <b>The value conclusion of the Income Approach</b>
      </font>
    </font>
  </font>
</p>

<p class="western" style="margin-bottom: 0.14in">
  <font color="#000000">
    <font face="Arial, serif">
      <font size="1" style="font-size: 8pt">The client has specifically....</font>
    </font>
  </font>
</p>


0 commentaires