のは、以下の私が持っているとしましょう:スパンが別のスパンの親であるかどうかをチェックしてから、子スパンを破棄する方法?
こんにちは、私の
<span class='green_mark'>
の名前はボブ</span>
<span class='red_mark'>
です。</span>
さんはどんな人ですか?
この例では、green_markはすでにred_markの内容をカバーしています。スパンの親がスパンの子をカバーするかどうかを検出する方法はありますか?次に、子供であるスパンを破壊しますか?
この場合、.green_mark
は親、.red_mark
は子供です。したがって、私は.red_mark
を破壊したい。
注:私はJSで強調表示していますが、PHP経由でデータを送信しています。したがって、このソリューションは、JSまたはPHPのどちらでもかまいません。
DOMツリーです。すべてのツリーノードは、その親/子孫が何であるかを知っています。 "red_mark"ノードを見つけ、ツリーの上に移動し始めます。上に到達して "green_mark"が見つからない場合、それらはネストされていません。 –
@MarcBスパンは動的でハイライトに基づいています。彼らは複数の色があるので、私は特定のスパンを探したくありません。私は親の子供を見つけることができます。なぜなら、彼らはテキストの1回の通過で複数の親の子関係になる可能性があるからです... –
は関係ありません。それはまだ木です。あなたの特定の条件が満たされていないかどうかを調べるために、ツリーをたどり、それに基づいて何かをします。 –