文件物件模型 (DOM)
**文件物件模型(Document Object Model, DOM)**是 HTML、XML 和 SVG 文件的程式介面。它提供了一個文件(樹)的結構化表示法,並定義讓程式可以存取並改變文件架構、風格和內容的方法。DOM 提供了文件以擁有屬性與函式的節點與物件組成的結構化表示。節點也可以附加事件處理程序,一旦觸發事件就會執行處理程序。 本質上,它將網頁與腳本或程式語言連結在一起。
雖然常常使用 JavaScript 來存取 DOM,但它本身並不是 JavaScript 語言的一部分,而且它也可以被其他語言存取(雖然不太常見就是了)。
這裡有一篇 DOM 的介紹 (en-US)可供查閱。
DOM 介面
Attr
(en-US)CharacterData
ChildNode
實驗性質Comment
(en-US)CustomEvent
Document
DocumentFragment
DocumentType
DOMError
(en-US)DOMException
(en-US)DOMImplementation
(en-US)DOMString
DOMTimeStamp
(en-US)DOMSettableTokenList
DOMStringList
(en-US)DOMTokenList
Element
Event
EventTarget
HTMLCollection
MutationObserver
MutationRecord
(en-US)Node
NodeFilter
(en-US)NodeIterator
(en-US)NodeList
ParentNode
實驗性質ProcessingInstruction
(en-US)Range
Text
(en-US)TreeWalker
(en-US)URL
Window
Worker
(en-US)XMLDocument
(en-US) 實驗性質
棄用的 DOM 介面
文件物件模型正被大量的簡化。為了達成這個目的,下這些介面是在 DOM level 3 或更早的規範中就被刪掉了。由於不清楚是否會被再度納入,請姑且當他們已經被遺棄,並避免使用:
HTML 介面
一份包含 html 的文件會透過 HTMLDocument
介面來描述。注意 HTML 規範也擴展了 Document
介面。
HTMLDocument
物件也提供了瀏覽器功能的存取:分頁、透過 Window
介面描繪頁面的視窗、與其相關的 樣式
(通常是 CSS )、與本文關聯的瀏覽器 歷史
、以及一個文件內的 選擇器
(en-US)。
HTML 元素介面
HTMLAnchorElement
(en-US)HTMLAppletElement
HTMLAreaElement
(en-US)HTMLAudioElement
(en-US)HTMLBaseElement
(en-US)HTMLBodyElement
(en-US)HTMLBRElement
(en-US)HTMLButtonElement
(en-US)HTMLCanvasElement
HTMLDataElement
HTMLDataListElement
(en-US)HTMLDialogElement
(en-US)HTMLDirectoryElement
HTMLDivElement
(en-US)HTMLDListElement
(en-US)HTMLElement
HTMLEmbedElement
(en-US)HTMLFieldSetElement
(en-US)HTMLFontElement
(en-US)HTMLFormElement
HTMLFrameElement
HTMLFrameSetElement
(en-US)HTMLHeadElement
(en-US)HTMLHeadingElement
(en-US)HTMLHtmlElement
(en-US)HTMLHRElement
(en-US)HTMLIFrameElement
(en-US)HTMLImageElement
HTMLInputElement
HTMLKeygenElement
HTMLLabelElement
(en-US)HTMLLegendElement
(en-US)HTMLLIElement
(en-US)HTMLLinkElement
(en-US)HTMLMapElement
(en-US)HTMLMediaElement
HTMLMenuElement
(en-US)HTMLMetaElement
(en-US)HTMLMeterElement
(en-US)HTMLModElement
(en-US)HTMLObjectElement
(en-US)HTMLOListElement
(en-US)HTMLOptGroupElement
(en-US)HTMLOptionElement
(en-US)HTMLOutputElement
(en-US)HTMLParagraphElement
(en-US)HTMLParamElement
(en-US)HTMLPreElement
(en-US)HTMLProgressElement
(en-US)HTMLQuoteElement
(en-US)HTMLScriptElement
(en-US)HTMLSelectElement
HTMLSourceElement
(en-US)HTMLSpanElement
(en-US)HTMLStyleElement
(en-US)HTMLTableElement
(en-US)HTMLTableCaptionElement
(en-US)HTMLTableCellElement
(en-US)HTMLTableDataCellElement
(en-US)HTMLTableHeaderCellElement
(en-US)HTMLTableColElement
(en-US)HTMLTableRowElement
(en-US)HTMLTableSectionElement
(en-US)HTMLTextAreaElement
(en-US)HTMLTimeElement
(en-US)HTMLTitleElement
(en-US)HTMLTrackElement
(en-US)HTMLUListElement
(en-US)HTMLUnknownElement
(en-US)HTMLVideoElement
(en-US)
其他介面
CanvasRenderingContext2D
CanvasGradient
(en-US)CanvasPattern
(en-US)TextMetrics
(en-US)ImageData
(en-US)CanvasPixelArray
(en-US)NotifyAudioAvailableEvent
(en-US)HTMLAllCollection
HTMLFormControlsCollection
(en-US)HTMLOptionsCollection
(en-US)HTMLPropertiesCollection
DOMStringMap
(en-US)RadioNodeList
(en-US)MediaError
(en-US)
棄用的 HTML 介面
SVG 介面
SVG 元素介面
SVGAElement
(en-US)SVGAltGlyphElement
SVGAltGlyphDefElement
SVGAltGlyphItemElement
SVGAnimationElement
(en-US)SVGAnimateElement
(en-US)SVGAnimateColorElement
(en-US)SVGAnimateMotionElement
(en-US)SVGAnimateTransformElement
(en-US)SVGCircleElement
(en-US)SVGClipPathElement
(en-US)SVGColorProfileElement
SVGComponentTransferFunctionElement
(en-US)SVGCursorElement
(en-US)SVGDefsElement
(en-US)SVGDescElement
(en-US)SVGElement
(en-US)SVGEllipseElement
(en-US)SVGFEBlendElement
(en-US)SVGFEColorMatrixElement
(en-US)SVGFEComponentTransferElement
(en-US)SVGFECompositeElement
(en-US)SVGFEConvolveMatrixElement
(en-US)SVGFEDiffuseLightingElement
(en-US)SVGFEDisplacementMapElement
(en-US)SVGFEDistantLightElement
(en-US)SVGFEFloodElement
(en-US)SVGFEGaussianBlurElement
(en-US)SVGFEImageElement
(en-US)SVGFEMergeElement
(en-US)SVGFEMergeNodeElement
(en-US)SVGFEMorphologyElement
(en-US)SVGFEOffsetElement
(en-US)SVGFEPointLightElement
(en-US)SVGFESpecularLightingElement
(en-US)SVGFESpotLightElement
(en-US)SVGFETileElement
(en-US)SVGFETurbulenceElement
(en-US)SVGFEFuncRElement
(en-US)SVGFEFuncGElement
(en-US)SVGFEFuncBElement
(en-US)SVGFEFuncAElement
(en-US)SVGFilterElement
(en-US)SVGFilterPrimitiveStandardAttributes
SVGFontElement
(en-US)SVGFontFaceElement
(en-US)SVGFontFaceFormatElement
(en-US)SVGFontFaceNameElement
(en-US)SVGFontFaceSrcElement
(en-US)SVGFontFaceUriElement
(en-US)SVGForeignObjectElement
(en-US)SVGGElement
(en-US)SVGGlyphElement
(en-US)SVGGlyphRefElement
(en-US)SVGGradientElement
(en-US)SVGHKernElement
(en-US)SVGImageElement
(en-US)SVGLinearGradientElement
(en-US)SVGLineElement
(en-US)SVGMarkerElement
(en-US)SVGMaskElement
(en-US)SVGMetadataElement
(en-US)SVGMissingGlyphElement
(en-US)SVGMPathElement
(en-US)SVGPathElement
(en-US)SVGPatternElement
(en-US)SVGPolylineElement
(en-US)SVGPolygonElement
(en-US)SVGRadialGradientElement
(en-US)SVGRectElement
(en-US)SVGScriptElement
(en-US)SVGSetElement
(en-US)SVGStopElement
(en-US)SVGStyleElement
(en-US)SVGSVGElement
(en-US)SVGSwitchElement
(en-US)SVGSymbolElement
(en-US)SVGTextElement
(en-US)SVGTextPathElement
(en-US)SVGTitleElement
(en-US)SVGTRefElement
(en-US)SVGTSpanElement
(en-US)SVGUseElement
(en-US)SVGViewElement
(en-US)SVGVKernElement
(en-US)
SVG 資料型別介面
這裡是資料型態的 DOM API,在 SVG 特性和性質的定義中被使用。
備註: 從 Gecko 5.0 開始,下列 SVG 相關的 DOM 介面物件的表示清單,現在可以被索引且可以像陣列般被取用;此外,他們也有 length 屬性來標示其清單中的項目個數:SVGLengthList
(en-US)、SVGNumberList
(en-US)、SVGPathSegList
,和 SVGPointList
(en-US)。
靜態類型
SVGAngle
(en-US)SVGColor
SVGICCColor
SVGElementInstance
SVGElementInstanceList
SVGLength
(en-US)SVGLengthList
(en-US)SVGMatrix
(en-US)SVGNumber
(en-US)SVGNumberList
(en-US)SVGPaint
SVGPoint
(en-US)SVGPointList
(en-US)SVGPreserveAspectRatio
(en-US)SVGRect
(en-US)SVGStringList
(en-US)SVGTransform
(en-US)SVGTransformList
(en-US)
動畫類型
SVGAnimatedAngle
(en-US)SVGAnimatedBoolean
(en-US)SVGAnimatedEnumeration
(en-US)SVGAnimatedInteger
(en-US)SVGAnimatedLength
(en-US)SVGAnimatedLengthList
(en-US)SVGAnimatedNumber
(en-US)SVGAnimatedNumberList
(en-US)SVGAnimatedPreserveAspectRatio
(en-US)SVGAnimatedRect
(en-US)SVGAnimatedString
(en-US)SVGAnimatedTransformList
(en-US)
SMIL 相關介面
其他的 SVG 介面
SVGAnimatedPathData
SVGAnimatedPoints
(en-US)SVGColorProfileRule
SVGCSSRule
SVGExternalResourcesRequired
SVGFitToViewBox
SVGLangSpace
SVGLocatable
SVGRenderingIntent
(en-US)SVGStylable
(en-US)SVGTests
SVGTextContentElement
(en-US)SVGTextPositioningElement
(en-US)SVGTransformable
SVGUnitTypes
(en-US)SVGURIReference
(en-US)SVGViewSpec
SVGZoomAndPan