События мыши внутри редактируемого элемента div - PullRequest
0 голосов
/ 21 ноября 2011

Я занимаюсь разработкой простого текстового редактора html и использую для этого div с contenteditable, установленным в true.

У меня есть несколько кнопок (полужирный, курсив, ...), которые позволяют пользователю изменять текст.Я хочу обновить состояние этих кнопок на основе состояния каждой команды, поэтому, если курсор находится внутри текста, который выделен жирным шрифтом, то изображение кнопки должно показать, что жирный шрифт включен.

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

Тем не менее, я хочу иметь возможность сделать это, когда пользователь нажимает на часть div.Я попробовал события mouseup и click для div, но они запускаются только тогда, когда div выбирается, а не когда выбирается его содержимое.

Есть ли способ захвата событий мыши внутри элемента div, чтобы я мог обновить кнопки?

1 Ответ

1 голос
/ 22 ноября 2011

Если я правильно понимаю ваш вопрос, просто сделайте событие клика для всех b или сильных тегов (которые вы используете) в вашем документе. Если за пределами div есть жирный текст, используйте span со стилем css font-weight:bold;.

...