我正在开发一个简单的html文本编辑器,我使用带有contenteditable设置为true的div来实现它。
我有一些按钮(粗体,斜体,......)让用户修改文本。我想根据每个命令的状态更新这些按钮的状态,因此如果光标位于粗体文本内,则按钮的图像应显示粗体打开。
我可以通过keyup事件实现这一点,所以在每个keyup上我检查所有命令的状态并更新按钮。
但是,当用户点击div的一部分时,我希望能够这样做。我尝试了鼠标并单击div的事件,但它们仅在选择div时触发,而不是在选择内容时触发。
有没有办法在div元素中捕获鼠标事件,以便我可以更新按钮?
答案 0 :(得分:1)
如果我正确理解您的问题,只需在文档中为所有b或强标记(无论您使用哪个标记)进行点击事件。如果div之外有粗体文本,请使用css样式font-weight:bold;
的跨度。