- 堀北真希うさぎ
-
- 主な作品
堀北真希うさぎ:平成初頭(西暦1990年前後)のボシュロムのコンタクト『オプティマ』TVコマーシャルを真似てレンズをつける場面を含んだ仮想CM動画
- サイト表紙
- しらぎくのウェブサイト作成入門
- DOMリファレンス
- HTML文書での文書ノードとHTMLDocumentインタフェイス
HTML文書でのDOMに於いては、文書ノードは一般のDOMよりも拡張されております。
ここでは、HTML文書固有の文書ノードと、それに実装されるHTMLDocumentインタフェイスについて解説します。
DOMに於いては文書ノードが定義され、文書ノードにはDocumentインタフェイスが実装される事としておりますが、HTMLではDocumentインタフェイスを更に拡張したHTMLDocumentインタフェイスが実装されるものとしております。
これは、DOMの仕様策定前の大手ウェブブラウザがJAVAスクリプト等を通じて実装してきたオブジェクトをDOM上でも取扱えるようにするためのものです。
- このDOMの仕様策定前のダイナミックHTMLをしばしばDOM第零水準と呼ぶそうです。
HTML文書の文書ノードに実装されるHTMLDocumentインタフェイスは、Documentインタフェイスで実装されるプロパティとメソッドに加えて、以下のプロパティとメソッドを実装します。
文書ノードに実装されるHTMLDocumentインタフェイスは、以下のプロパティを実装します。
Documentインタフェイスで実装されるプロパティは以下の通りです。
doctypeプロパティ
- 当該文書と関連付けられた文書型宣言です。(上書不可)
implementationプロパティ
- 当該文書を処理する他のオブジェクトに関するプロパティです。(上書不可)
documentElementプロパティ
- 当該文書のルート要素ノードを与えるプロパティです。(上書不可)
HTML文書での文書ノードには、HTMLDocumentインタフェイスにより以下のプロパティも実装されます。
- これらは、DOM策定以前に多くのウェブブラウザが実装してきたものです。
titleプロパティ
- <title>要素で与えられる文書の表題です。
referrerプロパティ
document.referrerプロパティと言う形で、リンク元のURLを与えます。
domainプロパティ
- 当該文書を配信したホスト名。
URLプロパティ
- 当該文書の完全なURI。
bodyプロパティ
- 文書本体。通常は<body>要素を返しますが、フレームセットの場合には最上位の<frameset>要素を返します。
imagesプロパティ
- 文書中に含まれる<img>要素関連のオブジェクトの配列。
appletsプロパティ
- 文書中に含まれる、JAVAアプレットを埋め込むための<object>要素及び<applet>要素関連のオブジェクトの配列。
linksプロパティ
- 文書中に含まれる、href属性を与えられた<a>要素及び<area>要素関連のオブジェクトの配列。
formsプロパティ
- 文書中に含まれる、<form>要素関連のオブジェクトの配列。
anchorsプロパティ
- 文書中に含まれる、name属性を与えられた<a>要素関連のオブジェクトの配列。
- id属性でもアンカーとなりますが、後方互換性の見地からid属性で作られたアンカーは含めないものとしております。
cookieプロパティ
- 文書に関連して取得したクッキー。
文書ノードに実装されるHTMLDocumentインタフェイスは、以下のようにDocumentインタフェイスで実装されるメソッドに加えて、固有のメソッドを実装します。
Documentインタフェイスで実装されるメソッドは以下の通りです。
createElement()メソッド
- 指定された要素名の要素ノードを新規に生成します。
詳細はcreateElement()メソッド(要素ノードの新規生成)をご覧ください。
createDocumentFragment()メソッド
- 空のフラグメントノードを新規に生成します。
createTextNode()メソッド
- テキストノードを新規に生成します。
詳細はcreateElement()メソッド(テキストノードの新規生成)をご覧ください。
createComment()メソッド
- 注釈宣言ノードを新規に生成します。
createCDATASection()メソッド
- CDATAノードを新規に生成します。
createProcessingInstruction()メソッド
- 処理命令ノードを新規に生成します。
createAttribute()メソッド
- 属性ノードを新規に生成します。
createEntityReference()メソッド
- 実体参照ノードを新規に生成します。
getElementsByTagName()メソッド
- 文書内にある指定された要素名の下位要素ノードの配列を与えます。
詳細はgetElementsByTagName()メソッド(要素名で指定された下位要素配列の取得)をご覧ください。
HTML文書での文書ノードには、HTMLDocumentインタフェイスにより以下のメソッドも実装されます。
- これらは、DOM策定以前に多くのウェブブラウザが実装してきたものです。
getElementById()メソッド
- id属性で与えられたIDを持つ要素ノードを取得します。
詳細はgetElementById()メソッド(HTML文書から指定されたIDを与えられた要素ノードを抽出)をご覧ください。
getElementsByName()メソッド
- name属性で与えられた名前を持つ要素ノードの配列を取得します。
詳細はgetElementsByName()メソッド(HTML文書から指定されたname属性値を与えられた要素ノード配列を抽出)をご覧ください。
open()メソッド
- 文書書き出し用のストリームを開きます。
既に文書が書かれていた場合、それらは消去されます。
書き出しにはwrite()メソッド及びwriteln()メソッドが用いられ、書き出しが終わったらclose()メソッドでクローズする事でレンダリングに入ります。
DOMとの親和性が極めて低いため、このメソッドは将来廃止される可能性があります。
close()メソッド
open()メソッドで開いた文書書き出し用のストリームを閉じ、レンダリングを開始させます。
write()メソッド
open()メソッドで開いた文書書き出し用のストリームに指定されたテキストを出力します。
- XML扱いのXHTML文書で、
document.write()メソッドがエラーになるのは、このようにwrite()メソッドがHTMLDocumnetインタフェイスで実装される事に依ります。一般のXML文書の文書ノードにはDocumentインタフェイスでメソッドが実装されるため、write()メソッドは無効となってしまうのです。
writeln()メソッド
open()メソッドで開いた文書書き出し用のストリームに指定されたテキストを、末尾に改行コードを加えて出力します。
しらぎくのウェブサイト作成入門サイトマップ