十九–HTML5 DOM新标准—处理文档元信息和管理交互能力
最后更新于:2022-04-01 20:32:32
## 一、了解DOM
1、DOM是Document Object Model的缩写,即文档对象类型,是文档在内存中的表示形式,是一个应用程序接口,定义了文档的逻辑结构以及一套访问和处理文档的方法。
2、HTML DOM与Core DOM的区别:前者提供了大量的方法和属性,与现有的程序模型一致,更便于脚本的编写者控制。
## 二、document对象
使用window.document属性返回一个document对象,代表当前window内加载的文档。window可以省略。winName.document返回指定window对象内加载的文档,winName是一个窗口的名称。
1、处理文档元信息:HTMLDocument接口定义了document对象的部分属性用于返回文档的元信息和对document对象的操作方法
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-08-30_57c54ecbae045.jpg)
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-08-30_57c54ecbc1ffd.jpg)
2、其他属性:
2.1 document.cookie:返回cookie的字符串形式,也可以给该属性复制用于创建cookie。
2.2 document.readyState:返回文档的状态,有三个可选值:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-08-30_57c54ecbd8a6a.jpg)
文档的状态变化会触发readystatechange事件
2.3 document.designModel:设置文档是否可编辑,值为on:HTML文档可以被编辑,等价于body的contenteditable属性为true,(但是此时会忽略元素的contenteditable属性);值为off:HTML文档不可以被编辑。
## 三、编辑API
编辑API可以执行很多命令,这些命令模仿了属性设置和对象方法调用才能实现的功能,一般用于富文本编辑器。
1、document.execCommand(commandID[showIU[,value]]):第一个参数是执行的命令参数,其参数值参考文档:[http://blog.csdn.net/woshinia/article/details/18664903](http://blog.csdn.net/woshinia/article/details/18664903)
2、document.queryCommandEnabled(commandID):确定命令是否已经激活。
3、document.queryCommandIndeterm(commandID):确定命令是否是不确定的。
4、document.queryCommandState(commandID):确定命令的状态
5、document.queryCommandSupported(commandID):确定命令是否被支持,返回true或false
6、document.queryCommandValue(commandID):返回命令的值
PS:简单的富文本源码下载:[http://download.csdn.net/detail/u011043843/7501567](http://download.csdn.net/detail/u011043843/7501567)
';