ドキュメントオブジェクトモデル (DOM)
ドキュメントオブジェクトモデル (Document Object Model, DOM) は、ウェブページを表す HTML のような文書の構造をメモリー内に表現することで、ウェブページとスクリプトやプログラミング言語を接続するものです。ふつうは JavaScript を使用しますが、HTML、SVG、XML などの文書をオブジェクトとしてモデリングすることはコア JavaScript 言語の一部ではありません。
DOM は文書を論理的なツリーで表現します。ツリーのそれぞれの枝はノードで終わっており、それぞれのノードがオブジェクトを含んでいます。 DOM のメソッドでプログラム的にツリーにアクセスできます。これにより、文書構造やスタイルやコンテンツを変更することができます。
ノードにはイベントハンドラーを割り当てることができます。イベントが発生すると、イベントハンドラーが実行されます。
DOM とは何であるか、どのように文書を表現するのかについてもっと学習するのであれば、DOM 入門をご覧ください。
DOM インターフェイス
AbortController
AbortSignal
AbstractRange
(en-US)Attr
CDATASection
CharacterData
Comment
CustomEvent
Document
DocumentFragment
DocumentType
DOMError
非推奨DOMException
DOMImplementation
DOMParser
DOMPoint
DOMPointReadOnly
DOMRect
DOMTokenList
Element
Event
EventTarget
HTMLCollection
MutationObserver
MutationRecord
NamedNodeMap
Node
NodeFilter
(en-US)NodeIterator
NodeList
ProcessingInstruction
Range
StaticRange
(en-US)Text
TextDecoder
TextEncoder
TimeRanges
TreeWalker
XMLDocument
廃止された 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 のドキュメントにあります。
SVG のインターフェイス
SVG 要素のインターフェイス
SVGAElement
(en-US)SVGAnimationElement
(en-US)SVGAnimateElement
(en-US)SVGAnimateColorElement
(en-US) 非推奨SVGAnimateMotionElement
(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
非推奨SVGFontFaceElement
(en-US) 非推奨SVGFontFaceFormatElement
(en-US) 非推奨SVGFontFaceNameElement
(en-US) 非推奨SVGFontFaceSrcElement
(en-US) 非推奨SVGFontFaceUriElement
(en-US) 非推奨SVGForeignObjectElement
(en-US)SVGGElement
(en-US)SVGGeometryElement
(en-US)SVGGlyphElement
(en-US) 非推奨SVGGlyphRefElement
(en-US) 非推奨SVGGradientElement
(en-US)SVGGraphicsElement
SVGHatchElement
ExperimentalSVGHatchpathElement
ExperimentalSVGHKernElement
(en-US) 非推奨SVGImageElement
(en-US)SVGLinearGradientElement
(en-US)SVGLineElement
(en-US)SVGMarkerElement
(en-US) ExperimentalSVGMaskElement
(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)SVGTextContentElement
(en-US)SVGTextElement
SVGTextPathElement
(en-US)SVGTextPositioningElement
(en-US)SVGTitleElement
(en-US)SVGTRefElement
(en-US) 非推奨SVGTSpanElement
(en-US)SVGUseElement
(en-US)SVGViewElement
(en-US)SVGVKernElement
(en-US) 非推奨
SVG データ型のインターフェイス
SVG のプロパティと属性の定義で使用されるデータタイプの DOM API を次に示します。
静的型
SVGAngle
(en-US)SVGColor
非推奨SVGICCColor
非推奨SVGElementInstance
SVGElementInstanceList
SVGLength
(en-US)SVGLengthList
(en-US)SVGNameList
SVGNumber
(en-US)SVGNumberList
(en-US)SVGPaint
SVGPathSeg
非推奨SVGPathSegClosePath
非推奨SVGPathSegMovetoAbs
非推奨SVGPathSegMovetoRel
非推奨SVGPathSegLinetoAbs
非推奨SVGPathSegLinetoRel
非推奨SVGPathSegCurvetoCubicAbs
非推奨SVGPathSegCurvetoCubicRel
非推奨SVGPathSegCurvetoQuadraticAbs
非推奨SVGPathSegCurvetoQuadraticRel
非推奨SVGPathSegArcAbs
非推奨SVGPathSegArcRel
非推奨SVGPathSegLinetoHorizontalAbs
非推奨SVGPathSegLinetoHorizontalRel
非推奨SVGPathSegLinetoVerticalAbs
非推奨SVGPathSegLinetoVerticalRel
非推奨SVGPathSegCurvetoCubicSmoothAbs
非推奨SVGPathSegCurvetoCubicSmoothRel
非推奨SVGPathSegCurvetoQuadraticSmoothAbs
非推奨SVGPathSegCurvetoQuadraticSmoothRel
非推奨SVGPathSegList
非推奨SVGPoint
(en-US) 非推奨SVGPointList
(en-US) 非推奨SVGPreserveAspectRatio
(en-US)SVGRect
非推奨SVGStringList
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
非推奨SVGAnimatedPoints
(en-US)SVGAnimatedPreserveAspectRatio
(en-US)SVGAnimatedRect
(en-US)SVGAnimatedString
(en-US)SVGAnimatedTransformList
(en-US)
SMIL 関連インターフェイス
その他 SVG インターフェイス
仕様書
Specification |
---|
DOM Standard |