Задать вопрос
@ViT93

Как удалить жирность у части предложения?

Всем привет!
Написал функцию которая делает выделенное слово жирным
function bold() {
  let element = document.getElementById('p');
  let selection = window.getSelection();
  let range = selection.getRangeAt(0);
  
  let node = document.createElement('range');
  node.appendChild(range.cloneContents());
  range.deleteContents();
  range.insertNode(node);
  
  if (!isBold(node)) {
    node = document.createElement('strong');
    node.appendChild(range.cloneContents());
    node.innerHTML = node.innerHTML.replace(new RegExp('<range>(.*?)<\/range>', 'g'), '\$1');
    range.deleteContents();
    range.insertNode(node);
  } else {
    // Здесь нужно написать отмену жирности
  }
}

function isBold(node) {
  if (node.parentElement === document.getElementById('p')) {
    return false;
  } else if (node.parentElement.tagName.toLowerCase() === 'strong') {
    return true;
  } else {
    return hasTag(node);
  }
}


Но как сделать обратное действие?

Жирный текст
<strong>Здесь любой текст</strong>

Удаляем жирность у слова "любой"
<strong>Здесь</strong> любой <strong>текст</strong>
  • Вопрос задан
  • 87 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы