Web ページ内のテキストのみを置き換えたいのですが、document.body.innerHTML を介して置き換えると、次のようにスタックする可能性があります。
HTML:
<p>test test </p>
<p>test2 test2</p>
<p>test3 test3</p>
J:
var param = "test test test2 test2 test3";
var text = document.body.innerHTML;
document.body.innerHTML = text.replace(param, '*' + param + '*');
私は取得したい:
*test test
test2 test2
test3* test3
「望ましい」結果の HTML:
<p>*test test </p>
<p>test2 test2</p>
<p>test3* test3</p>
したがって、上記のパラメーター ("test test test2 test2 test3") を使用してそれを実行したい場合、これは<p></p>
考慮されず、else セクションになります。
その間にある可能性のあるhtmlマークアップを「考慮」せずにテキストを置き換えるにはどうすればよいですか?
前もって感謝します。
編集(@Sonesh Dabhi用):
基本的に、Web ページのテキストを置き換える必要がありますが、html を含む Web ページをスキャンすると、置き換えが機能しません。テキストのみに基づいてスキャンして置き換える必要があります。
編集 2:
'Raw' JavaScript Please (jQuery なし)