document.close();について

[新着] Webテンプレートを仮オープンしました



0   名前: ひな : 2006/12/22(金) 19:51  ID:1MA0MzfO
初歩的なことですみません。
JavaScriptの解説を読むと、
document.write(xxxx);
document.close();
という風に、close()で閉じていますか?という文章があります。
でも、ネットのソースなどをみるとこんな風に欠かれているものは見かけません。
document.close();
は必要ですか。どなたか、document.close();についてご説明頂けないでしょうか。
よろしくお願いします。

1   名前: 匿名 : 2006/12/22(金) 19:51  ID:5m2bGK6y
「初歩的なこと」だと思うなら、まずリファレンスを見るべし。
http://www2u.biglobe.ne.jp/%7Eoz-07ams/prog/dom-ref/HTML/HTMLDocument.html#HTMLDocument-close

読み込みを終えた document にもう一度書き込むには、

・document.open() で書き込みモードに移行し(以前の内容はクリアされる)
・document.write() で書き込み
・document.close() で書き込みモード終了、レンダリングモードに移行

という流れで行う。

まあ、DOM 実装の多くは document.write() を呼び出した時点で document.open() も呼び出される。だが、document.close() しないと、いつまで経ってもページ読み込み中(書き込みモード)になってしまう。

2   名前: 匿名 : 2006/12/22(金) 19:51  ID:5m2bGK6y
補足。

<script type="text/javascript">

// ページ読み込み中(書き込みモード中)に実行されるので
// document.open/close する必要はない。

document.write ('<p>テスト。<\/p>');

</script>


<script type="text/javascript">

var windowObj = open ();

// 新規ウィンドウ内のページ読み込みは終了しているので
// document.open/close する必要がある。

windowObj.document.open ();
windowObj.document.write ('<p>テスト。<\/p>');
windowObj.document.close ();

</script>

一覧へ戻る