contentEditable: ввод основным стилем на стыке ситлей

357
23 февраля 2017, 23:56
<div contentEditable="true">
  <b>Bold</b>normal<i>italic</i>
</div>
  • Если мы попытаемся что-то ввести перед перед Bold, то введёные символы будут жирными. Однако, если мы введём что-то перед перед буквой i слова italic, введённые символы не будут курсивными.
  • Если мы введём что-то после Bold или italic, то символы будут иметь соответствующий вид.

Разграничение стилей в WYSIWYG-редактораз - отдельная нетривиальная задача, которая нормально не решена даже в Word. В данном вопросе достаточно добиться того, чтобы перед словом с другим стилем и после него ввод осуществлялся основным стилем (то есть НЕ жирный и НЕ курсивный). Другими словами, в данном примере достаточно того, чтобы вводимые символы были не курсивные и не жирные, если мы введёный символ:

  • Находится до или после слова Bold
  • Между словами Bold и italic
  • после слова italic

Какие подходы к решению данной задачи можно предложить? Из сторонних библиотек допускается только jQuery.

READ ALSO
modx evo работа с Shopkeeper

modx evo работа с Shopkeeper

Только начал изучать html, не могу сделать

309
Pug (Jade) разбить строку на слова

Pug (Jade) разбить строку на слова

В Javascript есть метод split, которым можно разбить строку на отдельные слова

304
php в html не работает

php в html не работает

Вообще ничего не выводитФайл с расширением php

240
Проблема с всплывающим окном

Проблема с всплывающим окном

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

333