TEST:dom

Jump to: navigation, search

DOM


Summary

The Document Object Model (DOM) is an application programming interface (API) for markup documents, like HTML, SVG, MathML, and XML. The DOM provides a logically structured representation of a document, and a set of Objects and Methods for manipulating that structure.

The Document Object Model (DOM) is an application programming interface (API) for markup documents, like HTML, SVG, MathML, and XML. The DOM provides a logically structured representation of a document, and a set of Objects and Methods for manipulating that structure.

Explore our DOM docs

DOM learning material

Tutorials and concept articles to teach you DOM manipulation from scratch.

Language features

A reference guide to DOM fundamental concepts.


Objects

A reference guide to all the core DOM objects.


Events

A reference guide to the available core DOM events.



Methods

A reference guide to the methods available for DOM manipulation.


Note: If you are completely new to web development, you may want to review Web development for beginners.

Background

When a markup document is parsed by a browser, it converts the document in a tree structure called the document object model, or DOM. This model can then be used to access and manipulate existing elements in the document, and create new ones, an essential set of activities when creating dynamic page functionality.

  • First version: It was 1997 when browser vendors involved in the W3C decided to agree on a single standardised document object model, to make cross browser coding less of a nightmare.
  • Current stable version: DOM level 3 is the most stable version, the specification of which is split up into different parts, all of whom have made it to recommendation status. You can find a list of all DOM publications at [technical reports]
  • Current and future work: [level 4] is the current nascent version of the DOM being worked on.

Contributing to DOM development

The DOM is being worked on by the [applications working group]; visit their mailing lists for discussion, and contribution of ideas.


Index of all DOM topics

dom/CDATASectiondom/CSSFontFaceRuledom/CharacterData
dom/Commentdom/DOMErrordom/DOMException
dom/DOMException/messagedom/DOMSettableTokenListdom/DOMStringList
dom/DOMTokenListdom/DOMTokenList/containsdom/Element
dom/Element/codedom/Element/errordom/Element/msInputStream
dom/Element/oneTimeOnlydom/Element/onerrordom/Element/onload
dom/Element/onloadenddom/Element/onloadstartdom/Element/onprogress
dom/Element/readyStatedom/Element/resultdom/Element/size
dom/Element/typedom/EventTargetdom/FormData
dom/HTMLAllCollectiondom/HTMLAnchorElementdom/HTMLAppletElement
dom/HTMLAreaElementdom/HTMLAudioElementdom/HTMLBGSoundElement
dom/HTMLBRElementdom/HTMLBaseElementdom/HTMLBaseFontElement
dom/HTMLBlockElementdom/HTMLBodyElementdom/HTMLButtonElement
dom/HTMLCanvasElementdom/HTMLDDElementdom/HTMLDListElement
dom/HTMLDTElementdom/HTMLDirectoryElementdom/HTMLDivElement
dom/HTMLDocumentCompatibleInfodom/HTMLElementdom/HTMLEmbedElement
dom/HTMLFieldSetElementdom/HTMLFontElementdom/HTMLFormElement
dom/HTMLFrameElementdom/HTMLFrameSetElementdom/HTMLHRElement
dom/HTMLHeadElementdom/HTMLHeadingElementdom/HTMLHtmlElement
dom/HTMLIFrameElementdom/HTMLImageElementdom/HTMLInputElement
dom/HTMLInputElement/checkeddom/HTMLIsIndexElementdom/HTMLLIElement
dom/HTMLLabelElementdom/HTMLLegendElementdom/HTMLLinkElement
dom/HTMLMapElementdom/HTMLMarqueeElementdom/HTMLMediaElement
dom/HTMLMediaErrordom/HTMLMenuElementdom/HTMLMetaElement
dom/HTMLModElementdom/HTMLOListElementdom/HTMLObjectElement
dom/HTMLOptGroupElementdom/HTMLOptionElementdom/HTMLParagraphElement
dom/HTMLParamElementdom/HTMLPhraseElementdom/HTMLPreElement
dom/HTMLQuoteElementdom/HTMLScriptElementdom/HTMLSelectElement
dom/HTMLSelectiondom/HTMLSpanElementdom/HTMLStyleElement
dom/HTMLTableCaptionElementdom/HTMLTableCellElementdom/HTMLTableColElement
dom/HTMLTableDataCellElementdom/HTMLTableElementdom/HTMLTableHeaderCellElement
dom/HTMLTableRowElementdom/HTMLTableSectionElementdom/HTMLTextAreaElement
dom/HTMLTitleElementdom/HTMLTrackElementdom/HTMLUListElement
dom/HTMLUnknownElementdom/HTMLVideoElementdom/MSLaunchUriCallback
dom/Node
dom/PointerEventdom/PointerEvent/height
dom/PointerEvent/initPointerEventdom/PointerEvent/isPrimary
dom/PointerEvent/pointerIddom/PointerEvent/pointerType
dom/PointerEvent/pressuredom/PointerEvent/tiltX
dom/PointerEvent/tiltYdom/PointerEvent/widthdom/StaticNodeList
dom/TextNodedom/TextRectangledom/ValidityState
dom/WindowModaldom/apisdom/apis/HTMLElement
dom/apis/HTMLElement/blurdom/apis/HTMLElement/classNamedom/apis/audio-video
dom/apis/audio-video/eventsdom/apis/audio-video/events/canplaydom/apis/audio-video/events/canplaythrough
dom/apis/audio-video/events/changedom/apis/audio-video/events/cuechangedom/apis/audio-video/events/durationchange
dom/apis/audio-video/events/emptieddom/apis/audio-video/events/endeddom/apis/audio-video/events/loadeddata
dom/apis/audio-video/events/loadedmetadatadom/apis/audio-video/events/loadstartdom/apis/audio-video/events/pause
dom/apis/audio-video/events/playdom/apis/audio-video/events/playingdom/apis/audio-video/events/progress
dom/apis/audio-video/events/ratechangedom/apis/audio-video/events/seekeddom/apis/audio-video/events/seeking
dom/apis/audio-video/events/stalleddom/apis/audio-video/events/suspenddom/apis/audio-video/events/timeupdate
dom/apis/audio-video/events/volumechangedom/apis/audio-video/events/waitingdom/apis/audio-video/methods
dom/apis/audio-video/methods/canPlayTypedom/apis/audio-video/methods/loaddom/apis/audio-video/methods/pause
dom/apis/audio-video/methods/playdom/apis/audio-video/propertiesdom/apis/audio-video/properties/audioTracks
dom/apis/audio-video/properties/autobufferdom/apis/audio-video/properties/autoplaydom/apis/audio-video/properties/buffered
dom/apis/audio-video/properties/codedom/apis/audio-video/properties/controlsdom/apis/audio-video/properties/currentSrc
dom/apis/audio-video/properties/currentTimedom/apis/audio-video/properties/defaultdom/apis/audio-video/properties/defaultPlaybackRate
dom/apis/audio-video/properties/durationdom/apis/audio-video/properties/endeddom/apis/audio-video/properties/error
dom/apis/audio-video/properties/heightdom/apis/audio-video/properties/initialTimedom/apis/audio-video/properties/kind
dom/apis/audio-video/properties/labeldom/apis/audio-video/properties/loopdom/apis/audio-video/properties/media
dom/apis/audio-video/properties/muteddom/apis/audio-video/properties/networkStatedom/apis/audio-video/properties/paused
dom/apis/audio-video/properties/playbackRatedom/apis/audio-video/properties/playeddom/apis/audio-video/properties/poster
dom/apis/audio-video/properties/preloaddom/apis/audio-video/properties/seekabledom/apis/audio-video/properties/seeking
dom/apis/audio-video/properties/srcdom/apis/audio-video/properties/srclangdom/apis/audio-video/properties/textTracks
dom/apis/audio-video/properties/track (HTMLTrackElement)dom/apis/audio-video/properties/typedom/apis/audio-video/properties/videoHeight
dom/apis/audio-video/properties/videoWidthdom/apis/audio-video/properties/volumedom/apis/audio-video/properties/width
dom/apis/documentdom/apis/document/activeElementdom/apis/document/getElementById
dom/apis/methodsdom/apis/properties
dom/attributesdom/clientInformationdom/clipboardData
dom/constantsdom/constants/DOM exception error codesdom/constants/HTTP response headers
dom/defaultSelecteddom/documentdom/document/getNamedFlows
dom/documentCompatibleInfoCollectiondom/documentTypedom/documentType/name
dom/esdom/eventsdom/events/DOMContentLoaded
dom/events/abortdom/events/activatedom/events/afterprint
dom/events/afterupdatedom/events/apis/constants/key identifiersdom/events/beforeactivate
dom/events/beforecopydom/events/beforecutdom/events/beforedeactivate
dom/events/beforeeditfocusdom/events/beforepastedom/events/beforeprint
dom/events/beforeunloaddom/events/beforeupdatedom/events/blur
dom/events/bouncedom/events/cellchangedom/events/change
dom/events/clickdom/events/contextmenudom/events/controlselect
dom/events/copydom/events/cutdom/events/dataavailable
dom/events/datasetchangeddom/events/datasetcompletedom/events/dblclick
dom/events/deactivatedom/events/dragdom/events/dragend
dom/events/dragenterdom/events/dragleavedom/events/dragover
dom/events/dragstartdom/events/dropdom/events/error
dom/events/errorupdatedom/events/filterchangedom/events/finish
dom/events/focusdom/events/focusindom/events/focusout
dom/events/hashchangedom/events/help
dom/events/inputdom/events/keydowndom/events/keypress
dom/events/keyupdom/events/layoutcompletedom/events/load
dom/events/losecapturedom/events/message
dom/events/mousedowndom/events/mouseenterdom/events/mouseleave
dom/events/mousemovedom/events/mouseoutdom/events/mouseover
dom/events/mouseupdom/events/mousewheeldom/events/move
dom/events/moveenddom/events/movestartdom/events/mscontentzoom
dom/events/msgesturechangedom/events/msgestureenddom/events/msgesturehold
dom/events/msgesturestartdom/events/msgesturetapdom/events/msgotpointercapture
dom/events/msinertiastartdom/events/mslostpointercapturedom/events/msmanipulationstatechanged
dom/events/mspointercanceldom/events/mspointerdowndom/events/mspointerhover
dom/events/mspointermovedom/events/mspointeroutdom/events/mspointerover
dom/events/mspointerupdom/events/mssitemodejumplistitemremoveddom/events/msthumbnailclick
dom/events/offlinedom/events/onlinedom/events/page
dom/events/paste
dom/events/popstatedom/events/propertychangedom/events/readystatechange
dom/events/resetdom/events/resizedom/events/resizeend
dom/events/resizestartdom/events/rowenterdom/events/rowexit
dom/events/rowsdeletedom/events/rowsinserteddom/events/scroll
dom/events/selectdom/events/selectionchangedom/events/selectstart
dom/events/startdom/events/stopdom/events/storage
dom/events/storagecommitdom/events/submitdom/events/unload
dom/externaldom/gotpointercapturedom/history
dom/imagesdom/implementation