изменить задний цвет части текста с помощью javascript?

StackOverflow https://stackoverflow.com/questions/1476193

  •  16-09-2019
  •  | 
  •  

Вопрос

у меня есть некоторая часть текста с html - тегами , например

<b>something</b>

я выделяю какую-то часть текста, например "some".

с помощью getSelection().getRangeAt(0);я получаю позицию курсора (textcursor), поэтому я знаю, какую часть текста я выделил.

у меня есть startOffset и endOffset.но проблема в том, что startOffset и endOffset игнорируют html-теги, поэтому числа, которые они возвращают, неплохие, и тогда я не знаю, к какой части текста я должен применить

<span style="background-color: somecolor ">some</span>

есть какие - нибудь идеи, как это решить?Спасибо

Это было полезно?

Решение

<b id='str1'>something</b>
<script>
function jsReplace()
{
  var elem = document.getElementById('str1')
  elem .innerHTML = elem .innerHTML.replace('some', '<span style="background-color: somecolor ">some</span>')

}
</script>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top