0
点赞
收藏
分享

微信扫一扫

Document对象

Document对象

​Document​​​接口表示任何在浏览器中载入的网页,并作为网页内容的入口,也就是​​DOM​​​树。​​DOM​​​树包含了像​​<body>​​​、​​<div>​​​这样的元素,以及大量其他元素。​​Document​​​对象向网页文档本身提供了全局操作功能,接口描述了任何类型的文档的通用属性与方法,根据不同的文档类型(例如​​HTML​​​、​​XML​​​、​​SVG​​​、​​...​​​)能够使用更多​​API​​​,此外使用​​text/html​​​作为内容类型​​content type​​​的​​HTML​​​文档,还实现了​​HTMLDocument​​​接口,而​​XML​​​和​​SVG​​​文档则额外实现了​​XMLDocument​​接口。

属性

  • ​Document()​​​:​​Document​​​构造器创建一个新的​​Document​​对象,该对象是在浏览器中加载的页面,并作为页面内容的入口点。
  • ​document.body​​​: 返回当前文档中的​​<body>​​​元素或者​​<frameset>​​元素。
  • ​document.characterSet​​​:​​document.characterSet​​只读属性,返回当前文档的字符编码,该字符编码是用于渲染此文档的字符集,可能与该页面指定的编码不同。
  • ​document.childElementCount​​​:​​ParentNode.childElementCount​​只读属性,返回一个无符号长整型数字,表示给定元素的子元素数。
  • ​document.children​​​: 只读属性,返回一个​​Node​​​的子​​elements​​​,是一个动态更新的​​HTMLCollection​​。
  • ​document.compatMode​​: 表明当前文档的渲染模式是怪异模式/混杂模式还是标准模式。
  • ​document.contentType​​​: 只读属性,返回当前文档的​​Content-Type(MIME)​​类型。
  • ​document.currentScript​​​:​​document.currentScript​​​属性返回当前正在运行的脚本所属的​​<script>​​​元素,调用此属性的脚本不能是​​JavaScript​​​模块,模块应当使用​​import.meta​​对象。
  • ​document.defaultView​​​: 在浏览器中,该属性返回当前​​document​​​对象所关联的​​window​​​对象,如果没有则会返回​​null​​。
  • ​document.designMode​​​:​​document.designMode​​​控制整个文档是否可编辑,有效值为​​on​​​和​​off​​​,根据规范,该属性默认为​​off​​​,通常用在​​<iframe>​​中。
  • ​document.dir​​​:​​document.dir​​​的本质是​​DOMString​​​,代表了文档的文字朝向,是从左到右​​ltr​​​(默认)还是从右到左​​rtl​​,并可以设置文字的朝向。
  • ​document.doctype​​​: 返回当前文档关联的文档类型定义​​DTD​​​,返回的对象实现了​​DocumentType​​​接口,使用​​DOMImplementation.createDocumentType()​​​方法可以创建一个​​DocumentType​​类型的对象。
  • ​document.documentElement​​​:​​document.documentElement​​​是一个会返回文档对象​​document​​​的根元素的只读属性,例如​​HTML​​​文档的​​<html>​​元素。
  • ​document.documentURI​​​:​​Document​​​接口的属性​​documentURI​​​以字符串的形式返回文档的位置​​location​​​,在最初的​​DOM3​​​定义中,这个属性是可读/写的,在现代的​​DOM​​​标准​​DOM4​​中,它是只读的。
  • ​document.domain​​​:​​Document​​​接口的​​domain​​​属性获取/设置当前文档的原始域部分,常用于同源策略,如果成功设置此属性,则原始端口的端口部分也将设置为​​null​​。
  • ​document.embeds​​​:​​Document​​​接口的​​embeds​​​只读属性返回当前文档中嵌入的​​<object>​​元素的列表。
  • ​document.firstElementChild​​​: 只读属性,返回对象的第一个子元素,如果没有子元素,则为​​null​​。
  • ​document.forms​​​:​​document.forms​​​返回当前文档中的​​<form>​​​元素的一个集合,是一个​​HTMLCollection​​。
  • ​document.mozFullScreenEnabled​​​: 返回一个布尔值,表明浏览器是否支持全屏模式,全屏模式只在那些不包含窗口化的插件的页面中可用,对于一个​​<iframe>​​​元素中的页面,则它必需拥有​​mozallowfullscreen​​属性。
  • ​document.head​​​: 返回当前文档中的​​<head>​​​元素,如果有多个​​<head>​​元素,则返回第一个。
  • ​document.hidden​​​:​​document.hidden​​​只读属性,返回布尔值,表示页面是​​true​​​否​​false​​隐藏。
  • ​document.images​​​: 只读属性,返回当前文档中所有​​image​​元素的集合。
  • ​document.implementation​​​: 返回一个和当前文档相关联的​​DOMImplementation​​对象。
  • ​lastElementChild​​​: 只读属性,返回对象的最后一个孩子​​Element​​​,如果没有子元素,则返回​​null​​。
  • ​document.lastModified​​: 返回一个字符串,其中包含了当前文档的最后修改日期和时间。
  • ​document.links​​​:​​document.links​​​属性返回一个文档中所有具有​​href​​​属性值的​​<area>​​​元素与​​<a>​​元素的集合。
  • ​document.location​​​: 返回一个​​Location​​​对象,包含有文档的​​URL​​​相关的信息,并提供了改变该​​URL​​​和加载其他​​URL​​的方法。
  • ​document.onbeforeunload​​: 该事件在即将离开页面(刷新或关闭)时触发。
  • ​document.onload​​: 文档加载完成后触发。
  • ​document.onreadystatechange​​​: 当文档的​​readyState​​​属性发生改变时,会触发​​readystatechange​​事件。
  • ​document.onvisibilitychange​​​: 将在该对象的​​visibilitychange​​事件被触发时调用。
  • ​document.onunload​​: 当窗口卸载其内容和资源时触发。
  • ​document.onerror​​​: 当发生​​JavaScript​​运行时错误与资源加载失败时触发。
  • ​document.onabort​​​: 发送到​​window​​​的中止​​abort​​​事件的事件处理程序,不适用于​​Firefox 2​​​或​​Safari​​。
  • ​document.onblur​​: 窗口失去焦点时触发。
  • ​document.onfocus​​: 窗口获得焦点时触发。
  • ​document.onresize​​: 窗口大小发生改变时触发。
  • ​document.onscroll​​: 窗口发生滚动时触发。
  • ​document.onmessage​​: 窗口对象接收消息事件时触发。
  • ​document.onchange​​: 窗口内表单元素的内容改变时触发。
  • ​document.oninput​​: 窗口内表单元素获取用户输入时触发。
  • ​document.onreset​​: 窗口内表单重置时触发。
  • ​document.onselect​​: 窗口内表单元素中文本被选中时触发。
  • ​document.onsubmit​​​: 窗口内表单中​​submit​​按钮被按下触发。
  • ​document.onhashchange​​: 当窗口的锚点哈希值发生变化时触发。
  • ​document.onclick​​: 当点击页面时触发。
  • ​document.onmouseup​​: 鼠标按键被松开时触发。
  • ​document.ondblclick​​: 当双击页面时调用事件句柄。
  • ​document.oncontextmenu​​: 在点击鼠标右键打开上下文菜单时触发。
  • ​document.onmousedown​​: 鼠标按钮被按下时触发。
  • ​document.onmousemove​​: 当移动鼠标时触发。
  • ​document.onmouseout​​: 鼠标移出窗口时触发。
  • ​document.onmouseover​​: 鼠标移动到窗口时触发。
  • ​document.onauxclick​​: 指示在输入设备上按下非主按钮时触发,例如鼠标中键。
  • ​document.onkeydown​​: 某个键盘按键被按下时触发。
  • ​document.onkeyup​​: 某个键盘按键被松开后触发。
  • ​document.onkeypress​​: 某个键盘按键被按下并松开后触发。
  • ​document.onanimationcancel​​​: 当​​CSS​​​动画意外中止时,即在任何时候它停止运行而不发送​​animationend​​​事件时将发送此事件,例如当​​animation-name​​被改变,动画被删除等
  • ​document.onanimationend​​​: 当​​CSS​​​动画到达其活动周期的末尾时,按照​​(animation-duration*animation-iteration-count) + animation-delay​​进行计算,将发送此事件。
  • ​document.onanimationiteration​​​: 此事件将会在​​CSS​​动画到达每次迭代结束时触发,当通过执行最后一个动画步骤完成对动画指令序列的单次传递完成时,迭代结束。
  • ​document.ondevicemotion​​: 设备状态发生改变时触发
  • ​document.ondeviceorientation​​: 设备相对方向发生改变时触发
  • ​document.ondeviceproximity​​: 当设备传感器检测到物体变得更接近或更远离设备时触发。
  • ​document.onbeforeprint​​: 该事件在页面即将开始打印时触发
  • ​document.onafterprint​​: 该事件在页面已经开始打印或者打印窗口已经关闭时触发。
  • ​document.onappinstalled​​​: 一旦将​​Web​​​应用程序成功安装为渐进式​​Web​​应用程序,该事件就会被分派。
  • ​document.onbeforeinstallprompt​​​: 当用户即将被提示安装​​web​​应用程序时,该处理程序将在设备上调度,其相关联的事件可以保存以供稍后用于在更适合的时间提示用户。
  • ​document.plugins​​​: 只读属性返回一个​​HTMLCollection​​​对象,该对象包含一个或多个​​HTMLEmbedElements​​​,表示当前文档中的​​<embed>​​元素。
  • ​document.readyState​​​:​​document.readyState​​​属性描述​​document​​​的加载状态。当该属性值发生变化时,会在​​document​​​对象上触发​​readystatechange​​事件。
  • ​document.referrer​​​: 返回一个​​URI​​​,当前页面就是从这个​​URI​​所代表的页面跳转或打开的。
  • ​document.scripts​​​: 返回一个​​HTMLCollection​​​对象,包含了当前文档中所有​​<script>​​元素的集合。
  • ​document.scrollingElement​​​: 只读属性,返回滚动文档的​​Element​​​对象的引用,在标准模式下,返回文档的根元素,当在怪异模式下, 返回​​HTML body​​​元素,若不存在返回​​null​​。
  • ​document.selectedStyleSheetSet​​: 返回当前使用的样式表集合的名称,你也可以使用这个属性设置当前样式表集。
  • ​document.styleSheetSets​​: 返回一个所有当前可用样式表集的实时列表。
  • ​document.title​​: 获取或设置文档的标题。
  • ​document.URL​​​: 返回当前文档的​​URL​​地址。
  • ​document.visibilityState​​​: 只读属性,返回​​document​​​的可见性,即当前可见元素的上下文环境,由此可以知道当前文档(即为页面)是在背后, 或是不可见的隐藏的标签页,或者正在预渲染,可选值有​​visible​​​可见(至少是部分可见)、​​hidden​​​不可见、​​prerender​​预渲染。

方法

  • ​document.adoptNode(externalNode)​​​: 从其他的​​document​​​文档中获取一个节点,该节点以及它的子树上的所有节点都会从原文档删除(如果有这个节点的话),并且它的​​ownerDocument​​​属性会变成当前的​​document​​文档,之后你可以把这个节点插入到当前文档中。
  • ​document.close()​​​:​​document.close()​​​用于结束由对文档的​​document.write()​​​写入操作,这种写入操作一般由​​document.open()​​打开。
  • ​document.createAttribute(name)​​​:​​document.createAttribute()​​​方法创建并返回一个新的属性节点,这个对象创建一个实现了​​Attr​​​接口的节点,这个方式下​​DOM​​不限制节点能够添加的属性种类。
  • ​document.createCDATASection(data)​​​: 创建并返回一个新的​​CDATA​​片段节点。
  • ​document.createComment(data)​​​: 创建并返回一个注释节点,​​data​​是一个字符串,包含了注释的内容。
  • ​document.createDocumentFragment()​​​: 创建一个新的空白的文档片段​​DocumentFragment​​。
  • ​document.createElement(tagName[, options])​​​: 在​​HTML​​​文档中,​​document.createElement()​​​方法用于创建一个由标签名称​​tagName​​​指定的​​HTML​​​元素。如果用户代理无法识别​​tagName​​​,则会生成一个未知​​HTML​​​元素​​HTMLUnknownElement​​。
  • ​document.createElementNS(namespaceURI, qualifiedName[, options])​​​: 创建一个具有指定的命名空间​​URI​​​和限定名称的元素,要创建一个元素而不指定命名空间​​URI​​​,请使用​​createElement​​方法。
  • ​document.createEvent(type)​​​: 创建一个指定类型的事件,其返回的对象必须先初始化并可以被传递给​​element.dispatchEvent​​。
  • ​document.createExpression(xpathText, namespaceURLMapper)​​​: 该方法将编译生成一个​​XPathExpression​​,可以用来多次的执行。
  • ​document.createNodeIterator(root[, whatToShow[, filter]])​​​: 返回一个新的​​NodeIterator​​对象。
  • ​document.createNSResolver(node)​​​: 创建一个​​XPathNSResolver​​,它根据指定节点范围内的定义解析名称空间。
  • ​document.createProcessingInstruction(target, data)​​: 创建一个新的处理指令节点,并返回。
  • ​document.createRange()​​​: 返回一个​​Range​​对象。
  • ​document.createTextNode(data)​​​: 创建一个新的文本节点,这个方法可以用来转义​​HTML​​字符。
  • ​document.createTreeWalker(root, whatToShow, filter, entityReferenceExpansion)​​​: 创建并返回一个​​TreeWalker​​对象。
  • ​document.evaluate(xpathExpression, contextNode, namespaceResolver, resultType, result)​​​: 根据传入的​​XPath​​​表达式以及其他参数,返回一个​​XPathResult​​对象。
  • ​document.exitFullscreen()​​​: 用于让当前文档退出全屏模式,调用这个方法会让文档回退到上一个调用​​Element.requestFullscreen()​​方法进入全屏模式之前的状态。
  • ​document.getElementById(id)​​​: 返回一个匹配特定​​ID​​​的元素,由于元素的​​ID​​在大部分情况下要求是独一无二的,这个方法自然而然地成为了一个高效查找特定元素的方法。
  • ​document.getElementsByClassName(names)​​​: 返回一个包含了所有指定类名的子元素的类数组对象,当在​​document​​​对象上调用时,会搜索整个​​DOM​​​文档,包含根节点。你也可以在任意元素上调用​​getElementsByClassName()​​方法,它将返回的是以当前元素为根节点,所有指定类名的子元素。
  • ​document.getElementsByName(name)​​​: 根据给定的​​name​​​返回一个在​​(X)HTML document​​的节点列表集合。
  • ​document.getElementsByTagName(name)​​​: 返回一个包括所有给定标签名称的元素的​​HTML​​​集合​​HTMLCollection​​​,整个文件结构都会被搜索,包括根节点。返回的​​HTML​​​集合是动态的,意味着它可以自动更新自己来保持和​​DOM​​​树的同步而不用再次调用​​document.getElementsByTagName()​​。
  • ​document.getElementsByTagNameNS(namespace, name)​​: 返回带有指定名称和命名空间的元素集合,整个文件结构都会被搜索,包括根节点。
  • ​document.hasFocus()​​​: 返回一个​​Boolean​​,表明当前文档或者当前文档内的节点是否获得了焦点,该方法可以用来判断当前文档中的活动元素是否获得了焦点。
  • ​document.hasStorageAccess()​​​: 返回了一个​​Promise​​来判断该文档是否有访问第一方储存的权限。
  • ​document.importNode(externalNode, deep)​​: 将外部文档的一个节点拷贝一份,然后可以把这个拷贝的节点插入到当前文档中。
  • ​document.open()​​: 打开一个要写入的文档,这将会有一些连带的影响,例如此时已注册到文档、文档中的节点或文档的window的所有事件监听器会被清除,文档中的所有节点会被清除。
  • ​prepend((Node or DOMString)... nodes)​​​: 可以在父节点的第一个子节点之前插入一系列​​Node​​​对象或者​​DOMString​​对象。
  • ​document.queryCommandEnabled(command)​​: 可查询浏览器中指定的编辑指令是否可用。
  • ​document.queryCommandSupported(command)​​: 确定浏览器是否支持指定的编辑指令。
  • ​document.querySelector(selectors)​​​: 表示文档中与指定的一组​​CSS​​​选择器匹配的第一个元素,是一个​​HTMLElement​​​对象,如果没有匹配到,则返回​​null​​。匹配是使用深度优先先序遍历,从文档标记中的第一个元素开始,并按子节点的顺序依次遍历。
  • ​document.querySelectorAll(selectors)​​​: 返回一个静态​​NodeList​​​,包含一个与至少一个指定​​CSS​​​选择器匹配的元素的​​Element​​​对象,或者在没有匹配的情况下为空​​NodeList​​。
  • ​document.releaseCapture()​​​: 如果该​​document​​​中的一个元素之上当前启用了鼠标捕获,则释放鼠标捕获,通过调用​​element.setCapture()​​实现在一个元素上启用鼠标捕获。
  • ​document.write(markup)​​​:​​document.write()​​​方法将一个文本字符串写入一个由​​document.open()​​​打开的文档流,因为​​document.write​​​需要向文档流中写入内容,所以若在一个已关闭(例如已完成加载)的文档上调用​​document.write​​​,就会自动调用​​document.open​​,这将清空该文档的内容。
  • ​document.writeln(line)​​: 向文档中写入一串文本,并紧跟着一个换行符。

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://developer.mozilla.org/zh-CN/docs/Web/API/Document

举报

相关推荐

0 条评论