![]()
ネットスケープのオブジェクト
ネットスケープはHTML文書全体をオブジェクトとしてと捉え、それぞれの文書が次のようなオブジェクトを持ちます。
オブジェクト名 内 容 window トップレベル・オブジェクトでページのウィンドウを表わすプロパティを含みます location いまいるURLのプロパティを含みます history 読者が以前訪れたURLのプロパティを含みます document タイトルや背景色やフォームといった現在の文書プロパティを含みます
ここで「simple.html」という作例をご紹介しましょう。この時、オブジェクトのプロパティは次のようになります。<html> <head> <title>A Simple Document Sample</title> </head> <body bgcolor=#ffffff text=#000000> <form name="myform" action="query" method="get"> 入力して下さい: <input type=text name="Hello" value="こんにちわ" size=20><p> これも選びますか?: <input type="checkbox" name="Check1" checked onClick="update(this.form)">オプション1<p> <input type="button" name="Button1" value="押して下さい" onClick="update(this.form)"> </form> </body>
![]()
実例は、このボタンを押して下さい。
- location.href = "http://www.yokochin.com/manual/sample/simple.html"
- document.title = "A Simple Document Sample"
- document.fgColor = #000000
- document.bgColor = #ffffff
- history.length = 5
ネットスケープ・オブジェクトの構造
ネットスケープ・オブジェクトはHTML文書自身の階層構造を構成しています。しかし、Javaのようなクラスを定義することはできません。文書の中の構造をオブジェクト、プロパティとして表現しているにすぎず、図で表わすと以下のような階層構造を持っています。
Javaスクリプトのプロパティを使用するには、この階層構造をよく理解しておく必要があります。
navigator window | |----- parent, frames, self, top | |----- location | |----- history | +----- document | |----- forms | | | | | element (text fields, textarea, checkbox, password | radio, select, button, submit, reset) | |----- links | +----- anchors
JavaスクリプトとHTML文書の関係
Javaスクリプトはインタプリタ形式で、HTML文書を上から下に読み込んで処理を行います。そのためヘッダ部内に置かれた<script>タグで参照するプロパティが未解決の場合、答はおかしくなってしまいます。処理の前後関係を理解しておかなければいけません。
このように定義したとしても背景色のデフォルト(初期設定)が決定されているため、後で白「white」と指定すると答はおかしくなり、白を設定したければ、<script> document.write(document.bgColor); </script> </head> <body bgcolor="white">
このような順序で指定しなければなりません。</head> <body bgcolor="white"> <script> document.write(document.bgColor); </script>
![]()