文件物件模型(英語:Document Object Model,缩写DOM),是W3C组织推薦的处理可扩展置标语言超文本标记语言的标准程式接口。

文档对象模型
在HTML文档中DOM层级的例子
首次出版1998年10月1日,​27年前​(1998-10-01
最新版本DOM4[1]
2015年11月19日,​10年前​(2015-11-19
组织World Wide Web Consortium, WHATWG
基础标准WHATWG DOM Living Standard
W3C DOM4
缩写DOM

Document Object Model的歷史可以追溯至1990年代後期微軟與Netscape的“瀏覽器大戰”(browser wars),雙方為了在JavaScriptJScript一決生死,於是大規模的賦予瀏覽器強大的功能。微軟在網頁技術上加入了不少專屬事物,既有VBScriptActiveX、以及微軟自家的DHTML格式等,使不少網頁使用非微軟平台及瀏覽器無法正常顯示。DOM即是當時醞釀出來的傑作。

DOM (Document Object Model) 译为文档对象模型,是 HTML 和 XML 文档的编程接口。

HTML DOM 定义了访问和操作 HTML 文档的标准方法。

DOM 以树结构表达 HTML 文档。

W3C DOM 标准被分为 3 个不同的部分:[2]

  • 核心 DOM - 针对任何结构化文档的标准模型
  • XML DOM - 针对 XML 文档的标准模型
  • HTML DOM - 针对 HTML 文档的标准模型

XML DOM 定义了所有 XML 元素的对象属性,以及访问它们的方法

HTML DOM

编辑

简介

编辑

HTML DOM 是:[3]

  • HTML 的标准对象模型
  • HTML 的标准编程接口
  • W3C 标准

HTML DOM 定义了所有 HTML 元素的对象属性,以及访问它们的方法

换言之,HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。

DOM方法

编辑

编程接口

编辑

可通过 JavaScript (以及其他编程语言)对 HTML DOM 进行访问。

所有 HTML 元素被定义为对象,而编程接口则是对象方法和对象属性。

方法是您能够执行的动作(比如添加或修改元素)。

属性是您能够获取或设置的值(比如节点的名称或内容)。 一些常用的 HTML DOM 方法:

  • getElementById(id) - 获取带有指定 id 的节点(元素)
  • appendChild(node) - 插入新的子节点(元素)
  • removeChild(node) - 删除子节点(元素)

DOM对象

编辑

一些常用的 HTML DOM 属性:

  • innerHTML - 节点(元素)的文本值
  • parentNode - 节点(元素)的父节点
  • childNodes - 节点(元素)的子节点
  • attributes - 节点(元素)的属性节点

DOM属性

编辑
  • nodeType 属性
  • nodeValue 属性
  • innerHTML 属性

標準化

编辑
 
WHATWG DOM

W3C對DOM進行標準化的動作,目前已經推行至第四代。

Level 1

编辑

Level 2

编辑

Level 3

编辑

Level 4

编辑

参考文献

编辑
  1. ^ All versioning refers to W3C DOM only.
  2. ^ Document Object Model (DOM) Specifications. www.w3.org. [2022-09-29]. (原始内容存档于2022-06-02). 
  3. ^ JavaScript HTML DOM. www.w3schools.com. [2022-09-29]. (原始内容存档于2022-10-22) (美国英语). 

外部連結

编辑

参见

编辑
  • SAX:Simple API for XML

📚 Artikel Terkait di Wikipedia

MVC

Framework等。 模型(Model) Model 则是由一个实体Bean来实现。 Swing是一个标准的MVC结构。ComponentUI代表View,负责描画组件。组件尤其Model层,比如JTextField的Document、JTable的TableModel、JTree的TreeModel

通用3D

  Simplified Generation of Biomedical 3D Surface Model Data for Embedding into 3D Portable Document Format (PDF) Files for Publication and Education.

JCP

JCP(Java Community Process)成立于1998年,是使有兴趣的各方参与定义Java的特征和未来版本的正式过程。 JCP使用JSR(Java规范请求,Java Specification Requests)作为正式规范文档,描述被提议加入到Java体系中的的规范和技术。

统一建模语言

Software(英语:Rational Software)公司中開發,於1996年又進一步發展。UML集成了Booch(英语:Booch method),对象建模技术(英语:Object-modeling technique)和面向对象程序设计的概念,将这些方法融合为单一的,通用的,并且可以广泛使用的建模语言。UML打算成为可以对并发和分布式系统的标准建模语言。

JAXP

5(页面存档备份,存于互联网档案馆) (JAXP 1.0) Document Object Model(DOM) Level 2 Core Specification. [2011-04-01]. (原始内容存档于2020-12-19).  Compare the Java 1.2.1 API index (页面存档备份,存于互联网档案馆)

Python

(原始内容存档 (PDF)于2023-03-05). Python is an interpreted object oriented programming language. This document describes how to write modules in C or C++ to extend

SQL

这部分标准主要包含可选的特性。 ISO/IEC 9075-10:2016 Part 10: Object language bindings (SQL/OLB)。定义了SQLJ,SQL嵌入到Java,保证了SQLJ应用程序二进制可移植。这部分标准主要包含可选的特性。 ISO/IEC 9075-11:2016

组件对象模型

组件对象模型(英語:Component Object Model,縮寫COM)是微軟的一套软件组件的二进制接口标准。这使得跨编程语言的进程间通信、动态对象创建成为可能。COM是多项微软技术与框架的基础,包括OLE、OLE自动化(英语:OLE Automation)、ActiveX、COM+、DCOM、Windows