「Document Object Mode」の版間の差分
imported>Administrator 細 (DOMをDocument Object Modeへ移動) |
imported>Administrator |
||
4行目: | 4行目: | ||
基本的には[[XML]]を[[ツリー構造]]として扱うためのAPI群であり、XMLに近いがXMLではない[[HTML]]の場合は[[Webブラウザ]]内でHTMLからXMLへ変換したのち利用できるようになっている。よって、DOM経由で[[HTML]]の[[ソースコード]]を取り出すと、HTMLのタグ閉じ忘れなどが修正されている状態となっている。このHTMLからXMLへの変換ルールがWebブラウザごとに異なることで、いわゆるHTMLのレイアウト崩れが発生する一因となっている。 | 基本的には[[XML]]を[[ツリー構造]]として扱うためのAPI群であり、XMLに近いがXMLではない[[HTML]]の場合は[[Webブラウザ]]内でHTMLからXMLへ変換したのち利用できるようになっている。よって、DOM経由で[[HTML]]の[[ソースコード]]を取り出すと、HTMLのタグ閉じ忘れなどが修正されている状態となっている。このHTMLからXMLへの変換ルールがWebブラウザごとに異なることで、いわゆるHTMLのレイアウト崩れが発生する一因となっている。 | ||
− | |||
大雑把に言えば、最近のWebブラウザに搭載されている開発モード([[Firefox]]の[[Firebug]]や[[Opera]]の[[Opera Dragonfly]]、[[IE]]の開発者ツールなど)で表示されるHTMLソースコードのHTMLツリー表示のことである。 | 大雑把に言えば、最近のWebブラウザに搭載されている開発モード([[Firefox]]の[[Firebug]]や[[Opera]]の[[Opera Dragonfly]]、[[IE]]の開発者ツールなど)で表示されるHTMLソースコードのHTMLツリー表示のことである。 | ||
+ | |||
+ | DOMは、XMLを平面的に読み込む[[SAX]]とは異なり、XMLデータを[[ツリー構造]]として扱う事ができる。ただし、通常の場合対象のXML文書を全て読み込んでからの扱いを前提とするため動作速度が遅かったり、[[メモリー]]の使用量が大きくなる欠点もある。 | ||
[[XML]]の場合は(個人的に周囲では)[[DOM]]よりも[[XPath]]が使われることが多いが、[[HTML]]の場合は[[JavaScript]]から手軽に利用できるという関係でDOMが使われることが多い。 | [[XML]]の場合は(個人的に周囲では)[[DOM]]よりも[[XPath]]が使われることが多いが、[[HTML]]の場合は[[JavaScript]]から手軽に利用できるという関係でDOMが使われることが多い。 |
2012年5月11日 (金) 02:39時点における最新版
Document Object Mode (DOM、どむ)とは、W3Cから勧告されているHTML文書やXML文書などをアプリケーションから読み書きする際に用いるAPI仕様である。
W3CではAPIの仕様を定義しているのみで、特定のプログラム言語を対象としたものではない。DOMの実装は各メーカーに委ねられており、DOMを実装したXMLパーサーが各メーカーから提供されている。
基本的にはXMLをツリー構造として扱うためのAPI群であり、XMLに近いがXMLではないHTMLの場合はWebブラウザ内でHTMLからXMLへ変換したのち利用できるようになっている。よって、DOM経由でHTMLのソースコードを取り出すと、HTMLのタグ閉じ忘れなどが修正されている状態となっている。このHTMLからXMLへの変換ルールがWebブラウザごとに異なることで、いわゆるHTMLのレイアウト崩れが発生する一因となっている。
大雑把に言えば、最近のWebブラウザに搭載されている開発モード(FirefoxのFirebugやOperaのOpera Dragonfly、IEの開発者ツールなど)で表示されるHTMLソースコードのHTMLツリー表示のことである。
DOMは、XMLを平面的に読み込むSAXとは異なり、XMLデータをツリー構造として扱う事ができる。ただし、通常の場合対象のXML文書を全て読み込んでからの扱いを前提とするため動作速度が遅かったり、メモリーの使用量が大きくなる欠点もある。
XMLの場合は(個人的に周囲では)DOMよりもXPathが使われることが多いが、HTMLの場合はJavaScriptから手軽に利用できるという関係でDOMが使われることが多い。
JavaScriptからDOMを利用する場合は、onloadイベントがDOM準備完了の合図であり、onloadイベント発生前にDOM APIを呼び出しても動かないよ。
W3C勧告[編集 | ソースを編集]
関連項目[編集 | ソースを編集]
参考文献[編集 | ソースを編集]
外部リンク[編集 | ソースを編集]
- http://www.w3.org/DOM/DOMTR - 公式サイト
- https://developer.mozilla.org/en/Gecko_DOM_Reference - FirefoxのDOM APIリファレンス