私はdiv
このようなテキストで構成されている可能性のあるsを持っています:
<div>
<p>
<span>My text <br /> Some more text</span>
</p>
</div>
またはこのように
<div>
<p> Here's a chunk of text </p>
</div>
または他の任意の組み合わせですが、最終レベルには、で区切られている場合とされていない場合があるテキストが含まれ<br />
ます。(これには単一のノードspan
が含まれていbr
ますか?それとも同じレベルの2人の兄弟ですか?)
最初のケースでは、私が欲しい最も深い子供たちからのテキストは次のとおりです。
My text
Some more text
第二に:
Here's a chunk of text
私のポイントは、最も深いレベルが何であれ、そのレベルのすべての兄弟が欲しいということです。何か助けはありますか?
編集
テキストのみが返されるため、単純に使用することはできません。テキストを編集してから、スタイルを保持したまま同じ兄弟$('p').text()
に戻す必要があります。だから例えば私が持っているなら
<div>
<p>
<strong>
<span style='font-family:arial'> Here's some <br /> text</span>
</strong>
</p>
</div>
そして、私は$('p').text()
「ここにいくつかのテキストがあります」を取得します。さて、このテキストを変数で操作するとき、たとえばchangedText
(その<br />
中に保持された状態で)、どうすれば元の場所に戻すことができますか?単純にできない
$('p').text(changedText);
どちらもできません$('p').html(changedText');
<strong>
と<span>
フォーマットが失われるためです。div
そのため、たとえば、で最も深いレベルのテキストノードを選択して、すべてのテキストにアクセスしたかったの$textNodes
です。$textNodes.text(changedText);
これにより、テキストノードの親の構造とスタイルを維持しながら簡単に実行できます。
それは可能ですか?