Document 节点

属性

快捷方式属性

  1. document.defaultView属性返回document对象所属的window对象。如果当前文档不属于window对象,该属性返回null
  2. 对于 HTML 文档来说,document对象一般有两个子节点。第一个子节点是document.doctype,指向<DOCTYPE>节点,即文档类型(Document Type Declaration,简写DTD)节点。HTML 的文档类型节点,一般写成<!DOCTYPE html>。如果网页没有声明 DTD,该属性返回null
  3. document.documentElement属性返回当前文档的根元素节点(root)。它通常是document节点的第二个子节点,紧跟在document.doctype节点后面。HTML网页的该属性,一般是<html>节点。
  4. document.body属性指向<body>节点,document.head属性指向<head>节点。这两个属性总是存在的,如果网页源码里面省略了<head><body>,浏览器会自动创建。另外,这两个属性是可写的,如果改写它们的值,相当于移除所有子节点。
  5. document.scrollingElement属性返回文档的滚动元素。也就是说,当文档整体滚动时,到底是哪个元素在滚动。
  6. document.activeElement属性返回获得当前焦点(focus)的 DOM 元素。通常,这个属性返回的是<input><textarea><select>等表单元素,如果当前没有焦点元素,返回<body>元素或null
  7. document.fullscreenElement属性返回当前以全屏状态展示的 DOM 元素。如果不是全屏状态,该属性返回null

节点集合属性

 

  1. document.links属性返回当前文档所有设定了href属性的<a><area>节点。
  2. document.forms属性返回所有<form>表单节点
  3. document.images属性返回页面所有<img>图片节点。
  4. document.embeds属性和document.plugins属性,都返回所有<embed>节点。
  5. document.scripts属性返回所有<script>节点。
  6. document.styleSheets属性返回文档内嵌或引入的样式表集合

 

文档静态信息属性

 

  1. document.documentURI属性和document.URL属性都返回一个字符串,表示当前文档的网址。不同之处是它们继承自不同的接口,documentURI继承自Document接口,可用于所有文档;URL继承自HTMLDocument接口,只能用于 HTML 文档。如果文档的锚点(#anchor)变化,这两个属性都会跟着变化。
  2. document.domain属性返回当前文档的域名,不包含协议和端口
  3. Location对象是浏览器提供的原生对象,提供 URL 相关的信息和操作方法。通过window.locationdocument.location属性,可以拿到这个对象。
  4. document.lastModified属性返回一个字符串,表示当前文档最后修改的时间。不同浏览器的返回值,日期格式是不一样的。
  5. document.title属性返回当前文档的标题。默认情况下,返回<title>节点的值。但是该属性是可写的,一旦被修改,就返回修改后的值。
  6. document.characterSet属性返回当前文档的编码,比如UTF-8ISO-8859-1等等。
  7. document.referrer属性返回一个字符串,表示当前文档的访问者来自哪里。
  8. document.dir返回一个字符串,表示文字方向。它只有两个可能的值:rtl表示文字从右到左,阿拉伯文是这种方式;ltr表示文字从左到右,包括英语和汉语在内的大多数文字采用这种方式。
  9. compatMode属性返回浏览器处理文档的模式,可能的值为BackCompat(向后兼容模式)和CSS1Compat(严格模式)

文档状态属性

 

  1. document.hidden属性返回一个布尔值,表示当前页面是否可见。如果窗口最小化、浏览器切换了 Tab,都会导致导致页面不可见,使得document.hidden返回truedocument.visibilityState返回文档的可见状态。它的值有四种可能。visible:页面可见。注意,页面可能是部分可见,即不是焦点窗口,前面被其他窗口部分挡住了。hidden:页面不可见,有可能窗口最小化,或者浏览器切换到了另一个 Tab。prerender:页面处于正在渲染状态,对于用户来说,该页面不可见。unloaded:页面从内存里面卸载了。
  2. document.readyState属性返回当前文档的状态,共有三种可能的值。loading:加载 HTML 代码阶段(尚未完成解析)interactive:加载外部资源阶段complete:加载完成
  3. 这个属性变化的过程如下。浏览器开始解析 HTML 文档,document.readyState属性等于loading浏览器遇到 HTML 文档中的<script>元素,并且没有asyncdefer属性,就暂停解析,开始执行脚本,这时document.readyState属性还是等于loadingHTML 文档解析完成,document.readyState属性变成interactive浏览器等待图片、样式表、字体文件等外部资源加载完成,一旦全部加载完成,document.readyState属性变成complete
  4. document.cookie属性用来操作浏览器 Cookie
  5. document.designMode属性控制当前文档是否可编辑。该属性只有两个值onoff,默认值为off。一旦设为on,用户就可以编辑整个文档的内容。
  6. document.currentScript属性只用在<script>元素的内嵌脚本或加载的外部脚本之中,返回当前脚本所在的那个 DOM 节点,即<script>元素的 DOM 节点。
  7. document.implementation属性返回一个DOMImplementation对象。该对象有三个方法,主要用于创建独立于当前文档的新的 Document 对象。DOMImplementation.createDocument():创建一个 XML 文档。DOMImplementation.createHTMLDocument():创建一个 HTML 文档。DOMImplementation.createDocumentType():创建一个 DocumentType 对象。

方法

  1. document.open方法清除当前文档所有内容,使得文档处于可写状态,供document.write方法写入内容。document.write方法用于向当前文档写入内容。在网页的首次渲染阶段,只要页面没有关闭写入(即没有执行document.close()),document.write写入的内容就会追加在已有内容的后面。
  2. document.querySelector方法接受一个 CSS 选择器作为参数,返回匹配该选择器的元素节点。如果有多个节点满足匹配条件,则返回第一个匹配的节点。如果没有发现匹配的节点,则返回null
  3. document.getElementsByTagName方法搜索 HTML 标签名,返回符合条件的元素。它的返回值是一个类似数组对象(HTMLCollection实例),可以实时反映 HTML 文档的变化。如果没有任何匹配的元素,就返回一个空集。
  4. document.getElementsByClassName方法返回一个类似数组的对象(HTMLCollection实例),包括了所有class名字符合指定条件的元素,元素的变化实时反映在返回结果中。
  5. document.getElementsByName方法用于选择拥有name属性的 HTML 元素(比如<form><radio><img><frame><embed><object>等),返回一个类似数组的的对象(NodeList实例),因为name属性相同的元素可能不止一个。
  6. document.getElementById方法返回匹配指定id属性的元素节点。如果没有发现匹配的节点,则返回null
  7. document.createElement方法用来生成元素节点,并返回该节点。
  8. document.createTextNode方法用来生成文本节点(Text实例),并返回该节点。它的参数是文本节点的内容。
  9. document.createAttribute方法生成一个新的属性节点(Attr实例),并返回它。document.createAttribute方法的参数name,是属性的名称。
  10. document.createComment方法生成一个新的注释节点,并返回该节点。
  11. document.createDocumentFragment方法生成一个空的文档片段对象(DocumentFragment实例)。
  12. document.createEvent方法生成一个事件对象(Event实例),该对象可以被element.dispatchEvent方法使用,触发指定事件。document.createEvent方法的参数是事件类型,比如UIEventsMouseEventsMutationEventsHTMLEventsdocument.addEventListener(),document.removeEventListener(),document.dispatchEvent()

 

posted on 2020-03-30 22:48  菜鸟Front  阅读(90)  评论(0)    收藏  举报