js怎样获取可编辑div中光标的位置?

JavaScript014

js怎样获取可编辑div中光标的位置?,第1张

首先要实现输入内容不同颜色是可以实现的,比如使用一个可编辑iframe就可以了,textarea是不行的。

至于功能的实现,我觉得不需要获取结束位置。

首先检测鼠标事件,如果有点击编辑区的某个位置,你就获取当前鼠标的落点,然后用innerHTML加入一对标签,<span class="color:#XXXXXX"></span>,所有输入内容都在这个span中间。效果就是输入的所有文字都变色。

不知道楼主明白没?

over,在鼠标指针移动到指定的对象上时发生。

move,在鼠标指针移动时发生。

就拿我刚刚遇到的一个问题举例,我 用canvas标签,创建了一个画布,并画了一个小矩形,我想让鼠标悬停到矩形区域时改变矩形填充色,这里只能监听整个画布,看起来应该用over,实际上用的却是move。因为,move在每次鼠标移动时,都会触发,会获得当前坐标值,用来判断这个点是否落在矩形内。若是用over,则会在进入画布时就触发,且仅会触发这一次,之后鼠标在画布内移动,一直都处于over状态,就不会触发,直到鼠标离开这个画布区域,失效。