当前位置:首页 > 教程 > 正文内容

DOM的对象-JavaScript对象模型

唐朝2年前 (2024-03-24)教程501

DOM ,一种标准编程接口,它将 HTML 文档视为树形结构(节点层次)的对象模型,允许程序和脚本动态更新、添加、删除或修改网页内容和样式。

一、节点和节点树

配套演示说明案例

<!DOCTYPE html>
<html lang="zh-Hans">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>节点树</title>
</head>
<body>
    <a href="#">a是元素节点,其中的href是属性节点,你现在看到的是文本</a>
    <h1>h1是元素节点,你现在看到的是文本节点</h1>
    <p>p是元素节点,你现在看到的“段落文本”是文本节点</p>
</body>
</html>

二、DOM的操作

DOM(Document Object Model)是HTML和XML文档的标准,提供了对文档内容进行访问和操作的方法。

通过DOM,可以使用JavaScript或其他语言操作HTML/XML文档的结构、内容和样式。

提供了许多操作文档的方法,包括:获取元素:通过标签名、ID、类名等属性选择器获取指定元素。

添加元素:向文档中添加新的元素。

删除元素:从文档中删除指定元素。

修改元素:修改指定元素的属性、内容等。

遍历元素:遍历文档中的所有元素或指定元素的子元素。

三、Node对象

Node(节点)对象代表文档树中的一个节点,Node对象是整个DOM的核心对象。

四、HTML DOM对象

HTML DOM对象是DOM在HTML文档中的具体实现。

它包括HTML Document对象、HTML Element对象、HTML Node对象等。

通过这些对象,可以访问和操作HTML文档中的各个部分。

五、HTML Document对象

HTML Document对象表示整个HTML文档,是HTML DOM对象的根对象。

它包含了文档的结构、内容和样式等信息。

可以通过它获取文档中的所有元素、设置文档标题、获取文档URL等。

Document 对象中的属性

document.activeElement 返回当前获取焦点的元素。
document.anchors 返回对文档中所有 Anchor 对象的引用。
document.applets 返回对文档中所有 Applet 对象的引用。注意:HTML5 已不支持 <applet> 元素。
document.baseURI 返回文档的基础 URI。
document.body 返回文档的 body 元素。
document.cookie 设置或返回与当前文档有关的所有 cookie。
document.doctype 返回与文档相关的文档类型声明 (DTD)。
document.documentMode 返回浏览器渲染文档的模式(仅 IE 和 Edge 支持)。
document.documentElement 返回文档的根节点(即 <html> 元素)。
document.documentURI 设置或返回文档的位置(URL)。
document.domain 返回当前文档的域名。
document.embeds 返回文档中所有嵌入内容(<embed>)的集合。
document.forms 返回文档中所有 Form 对象的引用。
document.images 返回文档中所有 Image 对象的引用。
document.implementation 返回处理该文档的 DOMImplementation 对象。
document.inputEncoding 返回文档的解码方式(即输入流的字符编码)。
document.lastModified 返回文档的最后修改日期(如果可用)。
document.links 返回对文档中所有 Area 和 Link 对象的引用。
document.readyState 返回文档状态(如 "loading"、"interactive" 或 "complete")。
document.referrer 返回载入当前文档的 URL(即来源页面地址)。
document.scripts 返回页面中所有脚本 (<script>) 的集合。
document.strictErrorChecking 设置或返回是否强制进行错误检查(默认值取决于浏览器实现)。
document.title 返回当前文档的标题。
document.URL 返回文档的完整 URL(与 document.documentURI 类似)。

Document 对象中的方法

document.addEventListener():向文档中添加事件监听器。
document.adoptNode(node):从其他文档中采纳(移动)一个节点到当前文档。
document.close():关闭之前通过 document.open() 打开的文档流,并显示已写入的内容。
document.createAttribute():创建一个新的属性节点,可以被附加到元素上。
document.createComment():创建一个注释节点。
document.createDocumentFragment():创建一个轻量级的 DocumentFragment 对象,常用于批量操作DOM元素。
document.createElement():创建一个新的元素节点。
document.createTextNode():创建一个新的文本节点。
document.getElementsByClassName():返回包含文档中指定类名的所有元素的NodeList集合。
document.getElementById():返回具有指定ID属性的单个元素。
document.getElementsByName():返回文档中具有指定名称属性的所有元素的NodeList集合。
document.getElementsByTagName():返回包含文档中指定标签名的所有元素的NodeList集合。
document.importNode(node, deep):从另一个文档导入节点到当前文档,可选地递归导入其所有子孙节点。
document.normalize():标准化文档,主要作用是合并相邻的文本节点及移除空文本节点。
document.normalizeDocument():执行一系列规范化操作,包括合并文本节点、清理文档结构等,这是一个更深层次的规范化过程。
document.open():打开文档流以准备写入新内容,通常与 document.write() 和 document.writeln() 配合使用。
document.querySelector(selector):根据指定CSS选择器查找并返回文档中第一个匹配的元素。
document.querySelectorAll(selector):根据指定CSS选择器查找并返回文档中所有匹配的元素组成的NodeList集合。
document.removeEventListener():从文档中移除先前添加的事件监听器。
document.renameNode(node, namespaceURI, qualifiedName):重命名一个元素或属性节点(IE不支持)。
document.write(content):向文档写入内容,通常在文档解析前或 document.open() 后使用。
document.writeln(content):与 document.write() 类似,但在写入内容后自动添加一个换行符。

六、HTML Element对象

HTML Element对象表示HTML文档中的一个元素,如段落、标题、图像等。

它包含了元素的标签名、ID、类名、属性、内容等信息。

可以通过它修改元素的样式、内容、属性等。

    文档如有描述不清楚、错误或者过时的地方,欢迎留言指出。

    文档、教程内容会不定时更新,转载请标明原帖链接,以免让过时的教程流入网络。

    分享给朋友:

    “DOM的对象-JavaScript对象模型” 的相关文章

    mouse事件(鼠标事件)- JavaScript事件处理

    mouse(鼠标)事件主要是操作鼠标所触发的事件,如单击、双击、鼠标离开等。由于在Windows系统中鼠标是最主要的定位设置,所以鼠标事件是Web开发中最常用的一类事件。请注意:此类事件不仅可能来自于“鼠标设备”,还可能来自于对此类操作进行了模拟以实现兼容性的其他设备,例如手机和平板电脑。1、鼠标事...

    form事件(表单事件)- JavaScript事件处理

    form事件是由HTML表单内的动作触发的事件,它提供一个让客户端输入文字或选择的功能,例如:单选按钮、复选框、选择列表等,由﹤form﹥标记组构成,JavaScript自动为每一个表单建立一个表单对象,并可以将用户提供的信息送至服务器进行处理。如何提交一个表单提交表单时,会触发 submit 事件...

    事件捕捉与事件冒泡 - JavaScript事件处理

    事件冒泡的执行顺序冒泡原理:当一个事件发生在一个元素上,它会首先运行在该元素上的处理程序,然后运行其父元素上的处理程序,然后一直向上到其他祖先上的处理程序。<div onclick="alert('执行')">   &l...

    什么是变量 - JavaScript基础知识

    如果将变量想象成一个“数据”的盒子,盒子上有一个唯一的标注盒子名字的贴纸。这样我们能更轻松地掌握“变量”的概念。例如,变量 message 可以被想象成一个标有 "message" 的盒子,盒子里面的值为 "你好!"。我们可以在盒子内放入任何值。并且,这个盒子...