IE4 DOM

IE4 DOM

[1] IE4 DOM は、 IE4 (以降) で実装された DOM API の通称です。

[4] 文書の一部にしかアクセスできないそれまでの DOM0 とは一線を画し、 文書を構成するすべての要素属性の読み書きが可能であり、 Web を単なる文書共有ネットワークからハイパーテキストアプリケーションプラットフォームへと進化させるものでした。

[5] W3C での標準化のために提出されましたが、 政治的理由からそのままの標準化ではなく、 メソッド名などがまったく異なり一部の機能も欠いたものが DOM1 となりました。そのため Web開発者は長年 W3C DOMIE4 DOM の互換性問題に悩まされることとなりました。

W3C DOM に取り入れられたもの

[8] DOM0 時代の DocumentHTMLCollection をそのまま残しつつ新たに文書木API が追加されたため、配列とは似て非なる live HTMLCollection文書木という二重構造が生まれることとなりました。

他のブラウザーにも実装され、 WHATWG により標準化されたもの

[9] W3C DOM標準化しなかった API の多くも、 Web開発者が多く使うこととなり、他の Webブラウザーも対応せざるを得ませんでした。 結果10年の時を経て WHATWG によって標準化されることとなりました。

その他

関連

[6] IE4 DOM を含む JavaScript の機能や CSSHTML といった現在でいう Webプラットフォームのことを、特に新機能を強調して、当時は DHTML といいました。

[7] 同じくバージョン4世代の Netscape4JavaScript APIDOM0 の延長線上に document.layers などの拡張を施したもので、 こちらも DHTML と呼ばれ対立技術とされていました。 現代の視点からは NetscapeAPI文書の一部にしかアクセスできないままの不完全なもので、 IE4 DOM の方がより柔軟で強力なものだといえますが、 当時はまだその真の力を理解していた人はほとんどいませんでした。

メモ

[10] DHTML Methods, InetSDK, , https://web.archive.org/web/20001109143300/http://www.msdn.microsoft.com/workshop/author/dhtml/reference/methods.asp#om40_methods

[11] DHTML Collections, InetSDK, , https://web.archive.org/web/20001115075500/http://msdn.microsoft.com/workshop/author/dhtml/reference/collections.asp#om40_coll

[2] ( 版) http://game.gr.jp/about/chkbrowser/getElementById.htm

W3C-DOMのdocument.getElementByIdとIE4のDOM、それからNN4だけに実装されたlayersを見てブラウザを分岐する方法です。

[12] Working with Windows, Frames, and Dialog Boxes, InetSDK, , https://web.archive.org/web/20001018081421/http://msdn.microsoft.com/workshop/author/om/windows_frames_dialogs.asp

[3] JavaScript - The IE 4 DOM ( 版) http://www.tutorialspoint.com/javascript/javascript_ie4_dom.htm

[13] MSHTML, InetSDK, , https://web.archive.org/web/20001120050000/http://msdn.microsoft.com/workshop/browser/mshtml/mshtml.asp

[14] Document Object Model Overview, InetSDK, , https://web.archive.org/web/20001117023900/http://msdn.microsoft.com/workshop/author/dom/domoverview.asp

[15] How to Build Tables Dynamically, InetSDK, , https://web.archive.org/web/20001029175821/http://msdn.microsoft.com/workshop/author/tables/buildtables.asp

[16] Dynamic Content, InetSDK, , https://web.archive.org/web/20001117044000/http://msdn.microsoft.com/workshop/author/dyncontent/content.asp

[17] Web Workshop - Dynamic HTML Object Model Introduction, Nancy Cluts, , https://web.archive.org/web/20001121105100/http://msdn.microsoft.com/workshop/author/om/omdoc.asp