Document 类型是 JavaScript 中表示文档节点的类型。
文档对象 document 是 HTMLDocument 的实例(HTMLDocument 继承 Document),表示整个 HTML 页面。
document 是 window 对象的属性,是一个全局对象。
- nodeType = 9
- nodeName = “#document”
- nodeValue = null
- parentNode = null
- ownerDocument = null
子节点
document.documentElement
- 获取整个html文档元素
访问子节点的快捷方式,始终指向 HTML 页面中的元素。虽然 childNodes 中始终有元素,但使用 documentElement 属性可以更快更直接地访问该元素。
- 获取整个html文档元素
document.body
- 在 HTMLDocument 中分别对应 body 元素。
- document.head
- 在 HTMLDocument 中分别对应 head 元素。
document.doctype
document.title
- title 对应获取或设置文档的标题。
- document.URL
- 取得完整的 URL
- document.domain
- 取得域名
- document.referrer
document.getElementsByClassName();
document.querySelector(); document.querySelectorAll();
除了document.getElementById() / document.querySelector() 返回文档中出现的第一个元素,<br />其它都加返回一个 HTMLCollection 对象
<a name="KpZiL"></a>
### Selectors API
以 CSS 选择符的模式匹配 DOM 元素
- querySelector();
- 没有匹配返回 null
- querySelectorAll();
- 返回的 NodeList 实例是一个静态“快照”、非“实时”查询
- 没有匹配返回 空 NodeList 实例
- matchs()
- 接收一个 CSS 选择符参数,元素匹配返回 true,否则返回 false
<a name="spsHy"></a>
### getElementsByClassName()
HTML5 新增
- **参数 **一个或多个类名的字符串
- **返回 **类名中包含相应类的元素的 NodeList。
> IE9及以上版本,以及现在代浏览器都支持
<a name="ih2Ac"></a>
## HTMLCollection对象(类数组)
- [] 或 item()
- 通过下标 index 来访问 HTMLCollection 取得特定的元素
- ["name"] 或 namedItem()
- 通过元素中 name 属性访问 HTMLCollection 取得特定的(第一项)元素
- length
- 元素的个数
<a name="Sve9x"></a>
## 所有元素 *
要取得文档中所有元素,可以给 getElementsByTagName() 传入*
```javascript
var allElements = document.getElementsByTagName('*');
console.log(allElements);
// 返回包含页面中所有元素的 HTMLCollection 对象,顺序就是它们在页面中出现的顺序。
// 因些第一项是 <html> 元素,第二项是 <head> 元素,以此类推。