ドキュメントオブジェクトモデル (DOM)
ドキュメントオブジェクトモデル (Document Object Model, DOM) は、— ウェブページを表す HTML のように — 文書の構造をメモリー内に表現することで、ウェブページとスクリプトやプログラミング言語を接続するものです。ふつうは JavaScript を使用しますが、 HTML、 SVG、 XML などの文書をオブジェクトとしてモデリングすることはコア JavaScript 言語の一部ではありません。
DOM は文書を論理的なツリーで表現します。ツリーのそれぞれの枝はノードで終わっており、それぞれのノードがオブジェクトを含んでいます。 DOM のメソッドでプログラム的にツリーにアクセスできます。これにより、文書構造やスタイルやコンテンツを変更することができます。
ノードにはイベントハンドラーを割り当てることができます。イベントが発生すると、イベントハンドラーが実行されます。
DOM とは何であるか、どのように文書を表現するのかについてもっと学習するのであれば、 DOM 入門をご覧ください。
DOM インターフェイス
Attr
CDATASection
CharacterData
Comment
CustomEvent
Document
DocumentFragment
DocumentType
DOMError
DeprecatedDOMException
DOMImplementation
DOMString
DOMTimeStamp
DOMStringList
DOMTokenList
Element
Event
EventTarget
HTMLCollection
MutationObserver
MutationRecord
NamedNodeMap
(en-US)Node
NodeFilter
(en-US)NodeIterator
NodeList
ProcessingInstruction
Range
Text
TextDecoder
ExperimentalTextEncoder
ExperimentalTimeRanges
TreeWalker
URL
Window
Worker
XMLDocument
Experimental
廃止された DOM インターフェイス
ドキュメントオブジェクトモデルは高度に単純化されてきています。このため、 DOM レベル 3 以前の仕様書にあった以下のインターフェイスは削除されています。一部が再導入されるかどうかはまだ不明ですが、当面は廃止されたと考え、使用を避けてください。
DOMConfiguration
DOMErrorHandler
DOMImplementationList
DOMImplementationRegistry
DOMImplementationSource
DOMLocator
DOMObject
DOMSettableTokenList
DOMUserData
ElementTraversal
Entity
EntityReference
NameList
Notation
TypeInfo
UserDataHandler
HTML DOM
HTML を含む文書は、 HTML 仕様で拡張した様々な HTML 固有の機能を含む Document
インターフェイスを使用して記述されます。具体的には、 Element
インターフェイスは拡張されて HTMLElement
を始めとするサブクラスになっており、それぞれが要素の一つ (または深く関係した同類のもの) を表します。
HTML DOM API によって、タブやウィンドウ、 CSS スタイルやスタイルシート、ブラウザーの履歴など、様々なブラウザーの機能にアクセスすることができます。これらのインターフェイスの詳細については、 HTML DOM API (en-US) のドキュメントにあります。
SVG のインターフェイス
SVG 要素のインターフェイス
SVGAElement
(en-US)SVGAltGlyphElement
(en-US) DeprecatedSVGAltGlyphDefElement
(en-US) DeprecatedSVGAltGlyphItemElement
(en-US) DeprecatedSVGAnimationElement
(en-US)SVGAnimateElement
(en-US)SVGAnimateColorElement
(en-US) DeprecatedSVGAnimateMotionElement
(en-US)SVGAnimateTransformElement
(en-US)SVGCircleElement
(en-US)SVGClipPathElement
(en-US)SVGComponentTransferFunctionElement
(en-US)SVGCursorElement
(en-US)SVGDefsElement
(en-US)SVGDescElement
(en-US)SVGElement
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)SVGFEDropShadowElement
(en-US)SVGFEFloodElement
(en-US)SVGFEFuncAElement
(en-US)SVGFEFuncBElement
(en-US)SVGFEFuncGElement
(en-US)SVGFEFuncRElement
(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)SVGFilterElement
(en-US)SVGFilterPrimitiveStandardAttributes
SVGFontElement
DeprecatedSVGFontFaceElement
(en-US) DeprecatedSVGFontFaceFormatElement
(en-US) DeprecatedSVGFontFaceNameElement
(en-US) DeprecatedSVGFontFaceSrcElement
(en-US) DeprecatedSVGFontFaceUriElement
(en-US) DeprecatedSVGForeignObjectElement
(en-US)SVGGElement
(en-US)SVGGeometryElement
(en-US)SVGGlyphElement
(en-US) DeprecatedSVGGlyphRefElement
(en-US) DeprecatedSVGGradientElement
(en-US)SVGGraphicsElement
SVGHatchElement
ExperimentalSVGHatchpathElement
ExperimentalSVGHKernElement
(en-US) DeprecatedSVGImageElement
(en-US)SVGLinearGradientElement
(en-US)SVGLineElement
(en-US)SVGMarkerElement
(en-US) ExperimentalSVGMaskElement
(en-US)SVGMetadataElement
(en-US)SVGMissingGlyphElement
(en-US) DeprecatedSVGMPathElement
(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)SVGTextContentElement
(en-US)SVGTextElement
SVGTextPathElement
(en-US)SVGTextPositioningElement
(en-US)SVGTitleElement
(en-US)SVGTRefElement
(en-US) DeprecatedSVGTSpanElement
(en-US)SVGUseElement
(en-US)SVGViewElement
(en-US)SVGVKernElement
(en-US) Deprecated
SVG データ型のインターフェイス
SVG のプロパティと属性の定義で使用されるデータタイプの DOM API を次に示します。
静的型
SVGAngle
(en-US)SVGColor
DeprecatedSVGICCColor
DeprecatedSVGElementInstance
SVGElementInstanceList
SVGLength
(en-US)SVGLengthList
(en-US)SVGMatrix
(en-US) DeprecatedSVGNameList
SVGNumber
(en-US)SVGNumberList
(en-US)SVGPaint
SVGPathSeg
DeprecatedSVGPathSegClosePath
DeprecatedSVGPathSegMovetoAbs
DeprecatedSVGPathSegMovetoRel
DeprecatedSVGPathSegLinetoAbs
DeprecatedSVGPathSegLinetoRel
DeprecatedSVGPathSegCurvetoCubicAbs
DeprecatedSVGPathSegCurvetoCubicRel
DeprecatedSVGPathSegCurvetoQuadraticAbs
DeprecatedSVGPathSegCurvetoQuadraticRel
DeprecatedSVGPathSegArcAbs
DeprecatedSVGPathSegArcRel
DeprecatedSVGPathSegLinetoHorizontalAbs
DeprecatedSVGPathSegLinetoHorizontalRel
DeprecatedSVGPathSegLinetoVerticalAbs
DeprecatedSVGPathSegLinetoVerticalRel
DeprecatedSVGPathSegCurvetoCubicSmoothAbs
DeprecatedSVGPathSegCurvetoCubicSmoothRel
DeprecatedSVGPathSegCurvetoQuadraticSmoothAbs
DeprecatedSVGPathSegCurvetoQuadraticSmoothRel
DeprecatedSVGPathSegList
DeprecatedSVGPoint
(en-US) DeprecatedSVGPointList
(en-US) DeprecatedSVGPreserveAspectRatio
(en-US)SVGRect
DeprecatedSVGStringList
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)SVGAnimatedPathData
DeprecatedSVGAnimatedPoints
(en-US)SVGAnimatedPreserveAspectRatio
(en-US)SVGAnimatedRect
(en-US)SVGAnimatedString
(en-US)SVGAnimatedTransformList
(en-US)
SMIL 関連インターフェイス
その他 SVG インターフェイス
GetSVGDocument
ShadowAnimation
SVGColorProfileRule
DeprecatedSVGCSSRule
DeprecatedSVGDocument
SVGException
DeprecatedSVGFitToViewBox
SVGLocatable
DeprecatedSVGRenderingIntent
(en-US) DeprecatedSVGUnitTypes
(en-US)SVGUseElementShadowRoot
SVGViewSpec
DeprecatedSVGZoomEvent
Deprecated