HTMLElementNN 6 IE 5(Mac)/6(Win) DOM 1

最近のブラウザのスクリプト可能な要素オブジェクトはいずれも、そのコア部分は、W3C DOM の HTMLElement 抽象オブジェクトの子孫にあたります。HTMLElement 自体は、DOM の Core モジュールの Node および Element チェーンからプロパティとメソッドを継承します。HTMLElement は、これらの継承された機能に、(XML 要素ではなく) HTML 要素のみに適用されるプロパティを追加します (classNamediridlangtitle プロパティなど)。HTMLBodyElementHTMLFormElement など、個々の HTML 要素オブジェクトはすべて、HTMLElement オブジェクトから特性を継承します。本章冒頭の共通のプロパティとメソッドが膨大なリストになっているのは、このためです。リストには、Node から Element、そして HTMLElement へと、長いチェーンを経て継承されたアイテムが含まれています。

 

要素オブジェクトのスクリプト作成との関連では、DOM 抽象オブジェクト名の用語 (HTMLBodyElement など) に関する知識は必須ではありません。スクリプトがこうした HTML オブジェクトのインスタンスを参照する場合には、識別子や、オブジェクトのプロパティ (eventObject.target など) が使用されるため、抽象オブジェクト名がスクリプト内に現れることはほとんどありません。唯一、こうした抽象オブジェクト名を目にする機会があるのはデバッグのときです。デバッグでは、変数で参照されているオブジェクトを調べるために alert() メソッドやその他のツールが使用されます。Netscape 6 の場合、こうしたオブジェクトへの参照を、特定の HTML 要素クラスのインスタンス (HTMLParagraphElementHTMLInputElement など) として通知します。この情報は、IE における参照の通知が単なる [object] であるのに比べると、はるかに有用です。