A | B | C | D | E | F | G | H | I | J | L | M | N | O | P | R | S | T | U | W |
Imageオブジェクト ・・・ HTMLドキュメントに埋め込まれた画像 対応バージョンクライアントサイドJavaScript 1.1継承元HTMLElementコーディング形式document.images[i]document.images.length document.image-name コンストラクタnew Image(width, height);
プロパティImageオブジェクトはHTMLElementオブジェクトからプロパティを継承し、次のプロパティを定義または上書きしています。
イベントハンドラImageオブジェクトはHTMLElementオブジェクトからイベントハンドラを継承しています。そして、次のイベントハンドラを定義しています。
HTML構文Imageオブジェクトは標準HTMLの<IMG>タグで生成します。イベントハンドラも追加できます。以下に示す構文で、JavaScriptでは使用しない一部の<IMG>属性は省略してあることに注意してください。<IMG SRC="url" 表示する画像。 WIDTH=pixels 画像の幅。 HEIGHT=pixels 画像の高さ。 [ NAME="image_name" ] 画像のプロパティ名。 [ LOWSRC="url" ] 低い解像度の場合の代替画像。 [ BORDER=pixels ] 画像枠の幅。 [ HSPACE=pixels ] 画像の左右に空ける余白。 [ VSPACE=pixels ] 画像の上下に空ける余白。 [ onLoad=handler ] ロードの完了時に呼び出される。 [ onError=handler ] エラーの発生時に呼び出される。 [ onAbort=handler ] ロード中止時に呼び出される。 > 解説document.images[]配列のImageオブジェクトは、<IMG>タグでHTMLドキュメントに埋め込まれた画像に対応します。このオブジェクトのプロパティはその大半が読み出し専用です。ただし、srcプロパティとlowsrcプロパティだけは例外です。HTMLからImageオブジェクトを生成するときに、srcプロパティを(おそらくlowsrcプロパティも)1回だけ設定するのが普通です。しかし、この2つのプロパティを動的に設定することも可能です。srcプロパティを設定すると、srcプロパティの新しい値で指定された画像、あるいは低解像度のモニター用にlowsrcプロパティを指定した場合はlowsrcプロパティで指定された画像がロードされます。なお、lowsrcプロパティを使用したい場合は、srcプロパティの前にlowsrcプロパティを設定する必要があります。srcプロパティを設定したときに、新しい画像のダウンロードを開始するからです。JavaScriptコードでImageオブジェクトを動的に生成する場合は、Image()コンストラクタを使用します。このコンストラクタはロードする画像を指定する引数を持ちません。そのため、HTMLで作成した画像のときのように、明示的に生成したImageオブジェクトのsrcプロパティを設定して画像をロードします。WebブラウザにはImageオブジェクトを表示する手段がありません。srcプロパティを設定しても、画像を強制的にダウンロードすることしかできません。しかし、この方法により画像をブラウザのキャッシュに格納されるので便利です。そのあと同じURLをimages[]配列の画像の1つとして指定した場合は、あらかじめロードされているので高速に表示されます。コード例を以下に示します。 document.images[2].src = preloaded_image.src; document.toggle_image.src = toggle_off.src; 使用上のヒントと注意Imageオブジェクトのsrcプロパティを使用すると、Webページで簡単なアニメーションを実装できます。また、ユーザのページに対する操作によって画像変更するのも名案です。例えば、画像とハイパーテキストリンクを使用して自分専用の「送信」ボタンを作成するとします。このボタンの初期状態を「使用不可」にしておき、ユーザが必要な情報をすべてフォームに入力すると、表示状態を変更してユーザが送信ボタンをクリックしてフォームを送信できるようにもできます。
Image.borderプロパティ ・・・ 画像枠の幅 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.border解説Imageオブジェクトのborderプロパティは読み出し専用の整数です。この整数はハイパーテキストリンクの画像の輪郭の幅を示すピクセル数です。このプロパティの値はHTMLの<IMG>タグのBORDER属性で設定します。
Image.completeプロパティ ・・・ 画像ロードが完了しているかどうか 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.complete解説Imageオブジェクトのcompleteプロパティは読み出し専用の論理値です。画像のロードが完了したかどうかを示します。もう少し厳密にいうと、ブラウザが画像をロードする処理を完了したかどうかという意味です。ロード中にエラーが発生したりロードが中断されても、completeプロパティの値はtrueです。関連項目Image.onabort、Image.onerror、Image.onload
Image.heightプロパティ ・・・ 画像の高さ 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.height解説Imageオブジェクトのheightプロパティは読み出し専用の整数です。この整数は画像の高さを示します。このプロパティの値はHTMLの<IMG>タグのHEIGHT属性で設定します。HEIGHTはHTMLの必須属性ではありませんが、この属性を記述するようにすればページのレイアウトにかかる時間を大幅に短縮できます。Navigator 2にはバグがあるので、JavaScriptを使用するページでは、WIDTH属性とHEIGHT属性の両方を指定しなければなりません(ただしNavigator 2ではImageオブジェクトは使えません)。
Image.hspaceプロパティ ・・・ 画像の左右の余白 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.hspace解説Imageオブジェクトのhspaceプロパティは読み出し専用の整数です。この整数はブラウザウィンドウに表示される画像の左右の余白を示すピクセル数です。このプロパティの値はHTMLの<IMG>タグのHSPACE属性で設定します。
Image.lowsrcプロパティ ・・・ 低解像度表示用の代替画像 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.lowsrc解説Imageオブジェクトのlowsrcプロパティは読み書き可能な文字列です。この文字列は、ユーザが低解像度モニターでブラウザを実行するときに表示する代替画像(通常は小さめの画像)のURLを示します。このプロパティの初期値はHTMLの<IMG>タグのLOWSRC属性で設定します。このプロパティを設定しても即座に効果が表れるわけではありません。しかし、srcプロパティが設定されて新しい画像がロードされるときに、低解像度システムの場合は、srcの新たに更新された値の代わりに、lowsrcプロパティの現在の値が使用されます。
Image.nameプロパティ ・・・ 画像の名前 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.name解説Imageオブジェクトのnameプロパティは読み出し専用の文字列です。このプロパティの初期値はHTMLの<IMG>タグのNAME属性で設定します。Image()コンストラクタで生成したImageオブジェクトには名前がなく、名前を割り当てることもできません。使用上のヒントと注意<IMG>タグで生成したImageオブジェクトは、JavaScriptのdocument.images[]配列に格納されます。画像に名前を指定すると、その画像はドキュメントオブジェクトのプロパティ(指定された名前と同じ)にも格納されます。次の例を見てください。NAME="toggle_button" このような属性を持つ画像は次の式で参照できます。 document.toggle_button
Image.onabortハンドラ ・・・ ユーザが画像のロードを中止したときに呼び出される 対応バージョンクライアントサイドJavaScript 1.1コーディング形式<IMG ...onAbort="handler" ...>image.onabort 解説onabortは、ユーザが画像のロードを中止したとき(例えばユーザがStopボタンをクリックしたとき)に呼び出されるイベントハンドラです。このイベントハンドラはHTMLの<IMG>タグのonAbort属性で定義します。この属性の値としてJavaScript文を指定します。HTML属性でイベントハンドラを指定した場合、スコープはウィンドウではなく、その要素になります。Navigator 4では、引数としてEventオブジェクトがonabortハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。
Image.onerrorハンドラ ・・・ 画像のロードでエラーが発生したときに呼び出される 対応バージョンクライアントサイドJavaScript 1.1コーディング形式<IMG ...onError="handler" ...>image.onerror 解説onerrorは、指定された画像のロード中にエラーが発生したとき(例えばネットワークがダウンしたときや、指定されたURLに画像データが存在しなかったとき)に呼び出されるイベントハンドラです。このイベントハンドラはHTMLの<IMG>タグのonError属性で定義します。HTML属性でイベントハンドラを指定した場合、スコープはウィンドウではなく、その要素になります。Navigator 4では、引数としてEventオブジェクトがonerrorハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。
Image.onloadハンドラ ・・・画像のロードが完了したときに呼び出される 対応バージョンクライアントサイドJavaScript 1.1コーディング形式<IMG ...onLoad="handler" ...>image.onload 解説onloadは、<IMG>タグで指定された画像のロードをブラウザが完了したときに呼び出されるイベントハンドラです。このイベントハンドラはHTMLの<IMG>タグのonLoad属性で定義します。HTML属性でイベントハンドラを指定した場合、スコープはウィンドウではなく、その要素になります。Navigator 4では、引数としてEventオブジェクトがonloadハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。
Image.srcプロパティ ・・・ 埋め込み画像のURL 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.src解説Imageオブジェクトのsrcプロパティは読み書き可能な文字列です。この文字列はブラウザが表示する画像のURLです。このプロパティの初期値は<IMG>HTMLタグのSRC属性で定義します。新しい画像のURLをこのプロパティに設定すると、ブラウザは指定された画像(低解像度システムの場合はlowsrcプロパティで指定された画像)をロードして表示します。この方法を利用すると、ユーザの振る舞いに応じてWebページの外観を変更したり簡単なアニメーションを実行したりできます。
Image.vspaceプロパティ ・・・ 画像の上下に空ける余白 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.vspace解説Imageオブジェクトのvspaceプロパティは読み出し専用の整数です。この整数はブラウザウィンドウで表示する画像の上下に空ける余白のことです。単位はピクセル数です。このプロパティの初期値はHTMLの<IMG>タグのVSPACE属性で定義します。
Image.widthプロパティ ・・・ 画像の幅 対応バージョンクライアントサイドJavaScript 1.1コーディング形式image.width解説Imageオブジェクトのwidthプロパティは読み出し専用の整数です。この整数は画像の幅のことです。単位はピクセル数です。このプロパティの初期値はHTMLの<IMG> タグのWIDTH属性で定義します。WIDTH属性はHTMLの必須属性ではありませんが、これを利用すると、ページのレイアウトにかかる時間を大幅に減少できます。また、Navigator 2にはバグがあるので、JavaScriptを含むページの画像では、WIDTH属性とHEIGHT属性の両方を指定しなければなりません(ただしNavigator 2ではImageオブジェクトは使えません)。
Infinity定数 ・・・ 無限大を表す定数 対応バージョンIE 4、ECMA-262(Navigator 4ではサポートされていません)[監訳者注]JavaScript 1.3からはNavigatorでもサポートされています。 コーディング形式Infinity解説Infinity定数は、正の無限大を表す特殊な定数です。関連項目isFinite()、NaN、Number.POSITIVE_INFINITY
Inputオブジェクト ・・・ HTMLフォームの入力要素 対応バージョンクライアントサイドJavaScript 1.0、JavaScript 1.1で拡張機能継承元HTMLElementコーディング形式form.elements[i]form.name プロパティInputオブジェクトはHTMLElementオブジェクトからプロパティを継承し、次のようなプロパティを定義または上書きしています。
メソッドInputオブジェクトはHTMLElementオブジェクトからメソッドを継承し、次のようなメソッドを定義または上書きしています。
イベントハンドラInputオブジェクトはHTMLElementオブジェクトからイベントハンドラを継承し、次のようなイベントハンドラを定義または上書きしています。
解説Form要素はFormオブジェクトのelements[]配列に格納されます。この配列の内容はInputオブジェクトです。Inputオブジェクトとは、フォームの構成要素であるボタンや入力フィールド、その他のコントロールなどのことです。多くの入力要素は、<INPUT>タグで作られます。また、<SELECT>タグと<OPTION>タグを使ったり、<TEXTAREA>タグを使って作成されることもあります。さまざまなフォーム入力要素が、たくさんのプロパティやメソッド、イベントハンドラを共有しています。これらの共有しているメソッドやイベントハンドラについては、この項で解説しています。個々のフォーム要素については、それぞれの要素の項を参照してください。Inputオブジェクトにはプロパティやメソッド、イベントハンドラなどが多数ありますが、そのすべてが各フォーム要素の型で使えるわけではありません。例えば、Buttonオブジェクトのonclickイベントハンドラは機能しますが、onchangeイベントハンドラは機能しません。逆にTextオブジェクトではonchangeイベントハンドラは機能しますが、onclickイベントハンドラは機能しません。そこで見やすいように、それぞれのフォーム要素ごとに使用できるプロパティの一覧を以下の図にまとめておきます。 一般に、フォーム要素は2つに大別できます。第1はボタンです。具体的には、Button、Checkbox、Radio、Reset、Submitです。これらのボタン要素はonclickイベントハンドラは持ちますが、onchangeイベントハンドラは持ちません。同様に、click()メソッドが使えますが、select()メソッドは使えません。第2は文字テキストを表示する要素です。具体的には、Text、Textarea、Password、FileUploadです。これらの要素はonchangeイベントハンドラを持ちますが、onclickイベントハンドラは持ちません。同様に、select()メソッドは使えますが、click()メソッドは使えません。 Select要素はどちらにも属さない特殊なものです。この要素は<SELECT>タグで作成され、他のフォーム要素と比べると<INPUT>要素に似ていません。技術的にはSelect要素とInputオブジェクトは別のオブジェクト型なのですが、Inputオブジェクトだと考えたほうがわかりやすいでしょう。 バグ情報残念ながら、フォーム要素の振る舞いは使用するプラットフォームにより違います。X Window Systemを使ったUnixプラットフォームの場合、キーボードから文字テキストを入力するフォーム要素しかキーボードフォーカスに関するメソッドやイベントハンドラが利用できません。そのため、ボタン要素とSelect要素はblur()とfocus()のメソッドは使えず、onblurとonfocusのイベントハンドラが呼び出されることもありません。関連項目Button、Checkbox、FileUpload、Form、Hidden、Password、Radio、Reset、Select、Submit、Text、Textarea、16章
Input.blur()メソッド ・・・ フォーム要素からキーボードフォーカスをはずす 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.blur()解説フォーム要素のblur()メソッドは、onblurイベントハンドラを呼び出さずに、その要素からキーボードフォーカスをはずします。この逆の操作をするのがfocus()メソッドです。しかしblur()メソッドはキーボードフォーカスをほかの場所へ移さないので、このメソッドを実際に使用するのは、focus()メソッドでキーボードフォーカスをほかの場所へ移す直前で、onblurイベントハンドラを呼び出したくないときに限られます。言い換えると、要素からキーボードフォーカスを明示的にはずすことで、ほかの要素に対してfocus()メソッドを呼び出し、キーボードフォーカスを暗黙に移しても、何の通知もされません。Hidden以外のフォーム要素はすべてblur()メソッドをサポートします。ただし、すべてのプラットフォームがまったく同じやり方でキーボードフォーカスを移すわけではありません。UnixプラットフォームでNavigator 2や3を使用する場合、blur()メソッドが使えるのは、文字テキストを表示するフォーム要素(Text、Textarea、Password、FileUpload)だけです。
Input.checkedプロパティ ・・・ Checkbox要素またはRadio要素のチェック状態 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.checked解説checkedプロパティは読み書きが可能な論理値です。フォーム要素のCheckboxやRadioが現在チェックされているかどうかを示します。このプロパティの値を設定すると、これらのボタン要素の状態を設定できます。このプロパティはCheckboxとRadio以外のフォーム要素では使いません。関連項目Checkbox、Radio
Input.click()メソッド ・・・ フォーム要素をマウスクリックしたのと同じ動作をする 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.click()解説フォーム要素のclick()メソッドはフォーム要素をマウスクリックした場合と同じ動作をしますが、その要素のonclick()イベントハンドラを呼び出しません。click()メソッドはあまり役立ちません。onclick()イベントハンドラを呼び出さないので、Button要素のclick()メソッドメソッドを呼び出しても意味がありません。Button要素は、onClick()イベントハンドラで定義された振る舞い以外はしないからです。Submit要素やReset要素の click()メソッドを呼び出すと、フォームの送信やリセットが行われますが、この操作にはFormオブジェクトの submit()メソッドやreset()メソッドを直接呼び出したほうがよいでしょう。
Input.defaultCheckedプロパティ ・・・ CheckboxまたはRadio要素のデフォルト状態 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.defaultChecked解説defaultCheckedプロパティは読み出し専用の論理値です。Checkbox要素またはRadio要素がデフォルトでチェック済みであるかどうかを示します。このプロパティはほかのフォーム要素には使えません。このプロパティは、<INPUT>タグのCHECKED属性に相当します。CHECKED属性が設定されている場合、defaultCheckedの値はtrueで、それ以外の場合はfalseです。フォームをリセットしたときに、Checkbox要素またはRadio要素をデフォルト値に戻す場合にdefaultCheckedプロパティを使用します。 関連項目Checkbox、Radio
Input.defaultValueプロパティ ・・・ 要素に表示するデフォルトの文字テキスト 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.defaultValue解説フォーム要素のdefaultValueプロパティは、フォーム要素に最初に表示する文字テキストです。フォームをリセットすると、フォームはこの初期値に復元されます。このプロパティはText、Textarea、Password要素だけで使えます。セキュリティの関係でFileUpload要素には使えません。Checkbox要素またはRadio要素の場合はdefaultCheckedプロパティがこれと同じ機能を果たします。関連項目Password、Text、Textarea
Input.focus()メソッド ・・・ フォーム要素にキーボードフォーカスを与える 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.focus()解説フォーム要素のfocus()メソッドは、onfocusイベントハンドラを呼び出さずに、指定された要素へキーボードフォーカスを移します。つまり、キーボードの操作や入力を受け付けられる状態にします。したがって、Text要素のfocus()メソッドを呼び出すと、ユーザが入力した文字テキストがそのテキスト要素に格納されるようになります。Button要素のfocus()メソッドを呼び出すと、ユーザがキーボードからそのボタンを呼び出せるようになります。Hidden要素以外のすべてのフォーム要素がfocus()メソッドをサポートします。しかし、必ずしもすべてのプラットフォームでまったく同じキーボード操作がサポートされているわけではありません。UnixプラットフォームでNavigator 2や3を使用する場合、focus()メソッドが使えるのは、文字テキストを表示するフォーム要素(Text、Textarea、Password、FileUpload)だけです。
Input.formプロパティ ・・・ 要素を格納するForm 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.form解説フォーム要素のformプロパティは、指定された要素を保持するFormオブジェクトへの参照です。読み出し専用です。formプロパティを利用すると、あるフォーム要素のイベントハンドラから同じフォームに属する「仲間」の要素へ簡単にアクセスできるようになります。イベントハンドラが呼び出されると、thisキーワードはそのイベントハンドラの対象となるフォーム要素を参照します。したがって、イベントハンドラはその要素を保持するフォームをthis.form式で参照できます。そのあとに名前を指定すれば、仲間の要素を参照できます。あるいはFormオブジェクトのelements[]配列を使用すれば、番号で要素を参照できます。 関連項目Form
Input.lengthプロパティ ・・・ Select.lengthを参照
Input.nameプロパティ ・・・ フォーム要素の名前 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.name解説nameはすべてのフォーム要素のプロパティです。読み出し専用の文字列で、フォーム要素を定義する<INPUT>HTMLタグのNAME属性でこのプロパティの値を設定します。フォーム要素の名前を使用する場面は2つあります。1つはフォームを送るときです。フォームの各要素のデータは次の形式で送られます。 name=value ここで、nameとvalueは送信時に必要に応じてエンコードされます。フォーム要素の名前を指定しなかった場合は、その要素のデータはWebサーバに無意味になります。 nameプロパティのもう1つの使い方は、JavaScriptコード中でフォーム要素を参照するときです。その場合、要素の名前がその要素を保持するフォームのプロパティになります。このプロパティの値はその要素への参照です。例えば、テキスト入力要素の名前がzipで、zipを保持するフォームの名前がaddressの場合は、address.zipでそのテキスト入力要素を参照できます。 フォーム要素がRadioやCheckboxの場合は、関連するオブジェクトが複数あり、それぞれのオブジェクトが同じnameプロパティを共用するのが普通です。その場合、データをサーバに送る形式は次のとおりです。 name=value1,value2,...,valuen 同様にJavaScriptの場合、同じ名前を共用する要素のそれぞれが、その名前の配列の要素になります。したがって、orderフォーム内にある4つのCheckboxオブジェクトが"options"という名前を共用している場合、order.options[]で配列の各要素にアクセスできます。 バグ情報Navigator 2にはバグがあります。複数のフォーム要素に同じ名前を付けて1つの配列に格納するとき、たとえ何もしないダミーのイベントハンドラであっても、イベントハンドラをすべてのフォーム要素で定義すれば、期待したとおりの順序でそれらのフォーム要素が配列に格納されます。どのフォーム要素もイベントハンドラを定義しなかった場合は、フォーム要素が逆順で配列に格納されます。フォーム要素の中にイベントハンドラを定義したものと定義しなかったものが混在した場合は、どのような順序で格納されるのかは不明です。配列への格納順が重要な場合は、ダミーのイベントハンドラを定義すれば、この問題を回避できます。
Input.onblurハンドラ ・・・ フォーム要素がフォーカスを失ったときに呼び出される 対応バージョンクライアントサイドJavaScript 1.0コーディング形式<INPUT TYPE=type onBlur="handler">input.onblur 解説フォーム要素のonblurイベントハンドラがWebブラウザから呼び出されるのは、ユーザがキーボードフォーカスをそのフォーム要素から離したときです。blur()を呼び出して要素からフォーカスをはずしても、そのオブジェクトのonblurイベントハンドラは呼び出されません。しかし、focus()を呼び出してほかの要素へフォーカスを移すと、現在どの要素がフォーカスを持っているかにかかわらず、onblurイベントハンドラが呼び出されます。onblurイベントハンドラの初期値は、そのフォーム要素を定義したHTMLタグのonBlur属性で定義されます。この属性の値はJavaScript文の文字列です。JavaScript文が複数あるときはセミコロンで区切ります。HTML属性の中でイベントハンドラが定義された場合は、スコープはウィンドウではなく、そのフォーム要素になります。 Navigator 4では、引数としてEventオブジェクトがonblurハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。 onblurイベントハンドラは、Hidden要素を除くすべてのフォーム要素で使用できます。しかし、NavigatorをUnixプラットフォームで使用した場合、onblurイベントハンドラが呼び出されるのは、テキスト入力要素(Text、Textarea、Password、FileUpload)だけに限られます。なお、JavaScript 1.1の場合は、Windowオブジェクトにもonblurイベントハンドラを定義できます。 関連項目Window.onblur、15章
Input.onchangeハンドラ ・・・ フォーム要素の値が変更されたときに呼び出される 対応バージョンクライアントサイドJavaScript 1.0コーディング形式<INPUT TYPE=type onChange="handler">input.onchange 解説フォーム要素のonchangeイベントハンドラがWebブラウザに呼び出されるのは、フォーム要素が表示した値をユーザが変更したときです。例えば、Text、Textarea、Password、FileUploadの要素が表示しているテキストが編集されたとき、Select要素が表示したオプションが選択あるいは選択解除されたときです。このイベントハンドラが呼び出されるのはユーザがこのような変更を加えたときであって、JavaScriptプログラムが要素の値を変更しても呼び出されません。なお、ユーザがテキスト入力フォーム要素に文字を入力したりそこから文字を削除したりするたびに、onchangeイベントハンドラが呼び出されるわけではありません。onchangeは、文字単位で処理するイベントハンドラではありません。ユーザが編集作業を完了したときに、onchangeは呼び出されます。ユーザがキーボードフォーカスをほかの要素へ移したときに、編集作業が完了したと見なされます。例えば、ユーザがフォームの次の要素をクリックしたときです。文字単位の処理については、HTMLElement.onkeypressハンドラを参照してください。 Hidden要素やそのほかのボタン要素がonchangeイベントハンドラを使用することはできません。これらのボタン要素(Button、Checkbox、Radio、Reset、Submit)は、その代わりにonclickイベントハンドラを使用します。 onchangeイベントハンドラは、そのフォーム要素を定義したHTMLタグのonChange属性で設定する関数です。この属性の値はJavaScript文の文字列です。JavaScript文が複数あるときはセミコロンで区切ります。HTML属性の中でイベントハンドラが定義された場合は、フォーム要素が表示した値をユーザが変更したときのみ呼び出されます。 Navigator 4では、引数としてEventオブジェクトがonchangeハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。 関連項目HTMLElement.onkeypress、15章
Input.onclickハンドラ ・・・ フォーム要素がクリックされたときに呼び出される 対応バージョンクライアントサイドJavaScript 1.0、JavaScript 1.1で機能拡張コーディング形式<INPUT TYPE=type onClick="handler">input.onclick 解説フォーム要素のonclickイベントハンドラがWebブラウザから呼び出されるのは、ユーザがその要素をクリックしたときです。JavaScriptが要素のclick()メソッドを呼び出してもonclickイベントハンドラが呼び出されないことに注意してください。onclickイベントハンドラを呼び出させるのは、ボタンのフォーム要素だけです。具体的には、Button、Checkbox、Radio、Reset、Submitです。そのほかの要素は、onclickではなくonchangeイベントハンドラを使用します。 onclickイベントハンドラは、そのフォーム要素を定義したHTMLタグのonClick属性で設定する関数です。この属性の値はJavaScript文の文字列です。JavaScript文が複数あるときはセミコロンで区切ります。HTML属性の中でイベントハンドラが定義された場合は、ユーザがこの要素をクリックしたときのみ呼び出されます。 Navigator 4では、引数としてEventオブジェクトがonclickハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。 Reset要素とSubmit要素はクリック時にデフォルトの動作を実行します。自分が属するフォームに対して、Reset要素はリセットを、Submit要素は送信を、それぞれ実行します。個々の要素のonclickイベントハンドラを使ってデフォルト以外の操作を行わせることもできます。JavaScript 1.1の場合は、イベントハンドラがfalseを返すことでデフォルトの操作を抑止することも可能です。Resetボタンのonclickイベントハンドラがfalseを返すと、そのフォームのリセットは実行されません。Submitボタンのonclickイベントハンドラがfalseを返すと、そのフォームの送信は実行されません。Formオブジェクト自身のイベントハンドラonsubmitとonresetでも、これと同じことができます。 なお、Linkオブジェクトはonclickイベントハンドラを定義しています。 関連項目Link.onclick、15章
Input.onfocusハンドラ ・・・ フォーム要素がフォーカスを得たときに呼び出される 対応バージョンクライアントサイドJavaScript 1.0コーディング形式<INPUT TYPE=type onFocus="handler">input.onfocus 解説フォーム要素のonfocusイベントハンドラが呼び出されるのは、ユーザがキーボードフォーカスをその要素に移したときです。なお、プログラムでfocus()メソッドを呼び出してフォーカスを移しても、onfocusイベントハンドラは呼び出されないことに注意してください。onfocusイベントハンドラの初期値は、そのフォーム要素を定義したHTMLタグのonFocus属性で定義されます。この属性の値はJavaScript文の文字列です。JavaScript文が複数あるときはセミコロンで区切ります。HTML属性の中でイベントハンドラが定義された場合は、スコープはウインドウではなく、そのフォーム要素になります。 Navigator 4では、引数としてEventオブジェクトがonfocusハンドラに渡されます。一方IE 4では引数が渡されるのではなく、elementを含むWindowオブジェクトのeventプロパティとして適切なEventオブジェクトが使えます。 onfocusイベントハンドラは、Hidden要素を除くすべてのフォーム要素で使用できます。しかし、NavigatorをUnixプラットフォームで使用した場合、onfocus()イベントハンドラが呼び出されるのは、テキスト入力要素(Text、Textarea、Password、FileUpload)だけにかぎられます。なお、JavaScript 1.1の場合は、Windowオブジェクトでもonfocusイベントハンドラが定義できます。 関連項目Window.onfocus、15章
Input.options[]プロパティ ・・・ Select.options[]を参照
Input.select()メソッド ・・・ フォーム要素のテキストを選択状態にする 対応バージョンクライアントサイドJavaScript 1.0コーディング形式input.select()解説select()メソッドを実行すると、Text、Textarea、Password、FileUploadの要素で表示されたテキストを選択状態にします。テキストを選択した効果はプラットフォームによって異なりますが、通常は指定されたTextオブジェクトのすべての文字テキストをユーザがマウスで触れたのと同じ効果になります。主な効果は次のとおりです。
Input.selectedIndexプロパティ ・・・ Select.selectedIndexを参照
Input.typeプロパティ ・・・ フォーム要素の型 対応バージョンクライアントサイドJavaScript 1.1コーディング形式input.type解説typeはすべてのフォーム要素のプロパティです。このプロパティは、フォーム要素の型を表す読み出し専用の文字列です。このプロパティの値とフォーム要素との対応関係を以下の表にまとめました。Select要素は、選択肢が1つだけ選択可能か複数選択可能かによって別の型になることに注意してください。typeは、ほかの要素プロパティと異なり、JavaScript 1.0では使えません。
Input.valueプロパティ ・・・ フォーム要素が表示/送信する値 対応バージョンクライアントサイドNavigator 2、IE 3(バグがある)コーディング形式input.value解説valueはすべてのフォーム要素のプロパティです。読み書きの両方が可能な文字列で、フォーム要素が表示したり、またはフォームの送信時に要素へ送られたりする値のことです。例えば、Text要素のvalueプロパティはユーザが入力した値のことで、この値がフォームと共に送られます。一方、Checkboxのvalueプロパティは表示されませんが、Checkbox要素がチェックされている場合にフォームと共に送られる値のことです。valueプロパティの初期値は、そのフォーム要素を定義するHTMLタグのVALUE属性で指定します。 ボタンオブジェクト(Button、Reset、Submit)のvalueプロパティは、ボタンの中に表示する文字列のことです。プラットフォームによっては、valueプロパティの値を変更すると、画面に表示されているボタン内の文字テキストが実際に変更される場合もあります。しかしこれはすべてのプラットフォームに当てはまるわけではありません。ボタンのラベルを変更すると、ボタンのサイズの変更によりドキュメントのほかの部分に重なったり見にくくなったりするので、このやり方は勧められません。 Select要素は、ほかのフォーム要素と同じようにvalueプロパティを持ちますが、実際には使用しません。Select要素が送る値は、この要素が保持するOptionオブジェクトのvalueプロパティで指定します。 セキュリティ上の理由から、FileUpload要素のvalueプロパティは読み出し専用です。
isFinite()関数 ・・・ 数値が有限かどうかのチェック 対応バージョンコアJavaScript 1.2、ECMA-262コーディング形式isFinite(n)
関連項目Infinity、isNaN()、NaN、Number.NaN、Number.NEGATIVE_INFINITY、Number.POSITIVE_INFINITY
isNaN()関数 ・・・ 数値以外かどうかのチェック 対応バージョンコアJavaScript 1.1、ECMA-262コーディング形式isNaN(x)
解説isNaN()関数は指定された引数が予約値NaNであるかどうかを調べます。NaNは、ゼロをゼロで除算した結果のような無効な数値のことです。この関数が必要なのは、NaNは自分自身をはじめ、任意の値と比較した結果が常にfalseになるからです。したがって、==演算子を使ってNaNであるかどうかを調べることはできません。通常、isNaN()関数は、parseFloat()やparseInt()の結果が無効な数値になっていないかどうかを調べるときに使用します。そのほか、ゼロ除算などの演算エラーがないかどうかを調べることもできます。 関連項目isFinite()、NaN、Number.NaN、parseFloat()、parseInt() |