前端学习(八十六) DOM-富文本(Dom)

版权声明: https://blog.csdn.net/zy21131437/article/details/82318882

富文本的含义

相对于纯文本,富文本含有样式信息,比如颜色,风格(字体等),字号以及一些特殊功能,如超链接,图像

自己开发不现实,难度不亚于开发一个js,因此都是使用的开源框架

常见的富文本编辑器:CKEditor,TinyMCE,ACE,UEditor(这款是百度开发的,开源且免费,还是很不错的)

当设元素置成contenteditable="true",或者js设置xxx.contentEditable = 'ture'

document.execCommand

然后就是要设置操作当前编辑区域中的内容,大多数命令实在操作选中区域的内容,或者插入新元素,或影响某一行的内容

bool = document.execCommand(aCommandName,ashowDefaultUI,avalueArgument)

  • aCommandName:命令名称
  • ashowDefaultUI:是否显示默认的交互界面,很多浏览器没有实现这个功能,一般传入false
  • avalueArgument:额外信息,比如插入图片的URL

document.execCommand支持的命令很多,详细查看w3c文档

Selection

表示选区的范围或者当前光标的位置,意味着我们可以使用脚本精确的控制所选择的内容(range),或者是光标的位置

这边有两个新名词,anchor和focus

  • anhor:起始位置,一般代表用户按下时的节点,不会随着拖动光标而发生变化
  • focus:焦点,结束的位置,一般代表鼠标松开时的位置,拖动鼠标时focus会发生变化

range

表示一块连续的文档片段,它可以使包含元素节点或文本节点,又或者是节点的一部分

总之,关于富文本,建议还是使用业内成熟的库

猜你喜欢

转载自blog.csdn.net/zy21131437/article/details/82318882