Как заменить некоторые слова на странице на HTML-элемент при учёте того что эти слова также встречаются и в коде
Пример:
<div title="some text qwe some text">some text qwe some text</div>
Если заменять просто через replace:
document.body.innerHTML = document.body.innerHTML.replace(/qwe/g,'<img src="rty.png" \/>');
То получается вот такая каша:
<div title="some text <img src="rty.png" /> some text">some text <img src="rty.png" \/> some text</div>
А если же менять не innerHTML, а innerText:
document.body.innerText = document.body.innerText.replace(/qwe/g,'<img src="rty.png" \/>');
То портится не только часть с заменой, а весь документ