検索 - みる会図書館

全データから 156454件見つかりました。
1. UNIX MAGAZINE 1996年12月号

3 フログラマー入門 荒井美千子 JavaScript(2) JavaScript で書く HTML Java とちょっと似ている " こと 前回の記事では、 を知ってもらうために、日時を表す Date クラスを使 って、 WWW ページにアクセスした時刻を表示する JavaScript の例を紹介しました。 もう一度 Java のコード ( リスト 1 ) と JavaScript の コード ( リスト 2 ) を見くらべてください。細かな違いは ありますが、 Date クラスのオプジェクトの作り方から、 日時を表す文字列を取得するためのメソッドまでそっくり です。 則回は、、 JavaScript と Java はまるで違う " という意 graphic. drawString( 文字列 ) ; Java で Web ページに文字列を表小するには、 去絲材 j ・に注目してください。 と疑問に思われる方もいるでしよう。それぞれのコードの 「いったい、どこいらへんがそんなに違うんやろ」 味のことを書きました。 一方、 JavaScript で Web ページに文字列を表小する の名前を付けるかはプログラムの書き方しだいです。 トで、 graphic" と書くか、、 g " と書くか、それ以外の別 ソッドに引数として渡す Graphics クラスのオプジェク と書きます。、、 graphic" は、プラウザがアプレットのメ には、 104 名前で、プログラムか勝手に変史することはできません。 と書きます。この、、 document" は JavaScript カヾ夬めた document . vrite ( 文字列 ) ; リスト 1 時刻を新する Java のコード Date d = new Date() ; String datestr = d. t0String() ; String timestr = datestr. substring()l , 19 ) ; graphic . drawString(timestr,50, 100 ) ; リスト 2 時刻を表示する JavaScript のコード d = new Date(); datestr = d. t0String() ; timestr = datestr. substring()l , 19 ) ; document . write(timestr) ; なんだかこのあたりが、 Java と JavaScript の違いの ようです。 Java と JavaScript の世界観 Java の世界は、、、初めにアプレットありき " です。 Java のプログラムから見れば、プラウサなどの Java システムがアプレットを生成したときが世界の始まりで、 アプレットか消滅したときが川 : 界の終焉です。 また、 ・アプレットを含む HTML の文書 ・アプレットを表示しているウインドウ など、アプレットの外側の世界へは、アプレットのメソッ ドを介してアクセスします。 これに対し、 JavaScript の世界は、、初めにプラウザあ りき " です。 JavaScript の世界では、プラウサの部品やドキュメ ントなどが、すべて創世期から存在するオプジェクトと して用意されています。 JavaScript プログラムからは、 JavaScript システムによってあらかしめ決められた名前 UNIX MAGAZINE 1996 ユ 2

2. UNIX MAGAZINE 1997年7月号

連載 / プログラマー入門ー JavaScript のバージョンについてはあまり触れていませ ん。私の勝手な慮測ですが、 JavaScript 1.0 に機能を追 加する時点で、 「あっ、バージョンを区別しないとあかんのとちゃうか」 「はなら、もとのを 1.0 にして、新しいはうは 1.1 にし たろ」 などという決め方をしたのではないでしようか。 JavaScript のパージョンの指定 HTML に言当する JavaScript プログラムの書き方に も、バージョン番号をあとから付けたと思われるふしがあ ります。これまでに紹介した JavaScript プログラムは、 く script language=" JavaScript " > で始まっていました。しかし、 JavaScript 1.1 では正式 く script language=" JavaScriptl . 1 " > と書くのだそうです。 それなら、 JavaScript 1.0 では language を、 Java- Script1.0 " と指定するのかといえばそんなことはありま せん。こちらはたんに、 く script 1anguage="JavaScript"> と書くだけです。つまり、 JavaScript 1.0 の時点ではバ ージョン番号を付けることにまで考えがおよばなかったよ うです。 ところで、ふだんはこれらを意識して書き分ける必要は ありません。 language=" JavaScript" と書いておけば、 web プラウサのバージョンに応した JavaScript バージョンカイ吏用されます。 lnternet ExpIorer は ? lnternet ExpIorer 3. x の JavaScript のノヾージョン は 1.0 なので、今回紹介する JavaScript と Java を繋 ぐ機能は基本的には使えません。しかし、あとで紹介す る「 Java を直孑却平び出す」項の例だけは、 lnternet Ex- plorer 3. x でも成功しました。もっとも、この方法は JavaScript 1.0 で動作するとは書かれていないようなの で、運がよかっただけかもしれませんが・・・ UNIX MAGAZINE 1997.7 この号が店頭に並ぶころには、 lnternet Explorer 4.0 がリリースされているはずです 1 。もしかすると、新しい バージョンでは JavaScript と Java を繋げるようになっ ているかもしれません。 Java の′く一ジョン バージョンに注意しなければならないのは Java も同し で、 JavaScript に対応したものを使う必要があります。 JavaScript 1.1 と繋がる Java のノヾージョンは、 JDK 1.0.2 ですが、点では JDK 1.1.1 が職斤版としてリ リースされています。これから Java をダウンロードする 人は注意してください。 場合によっては JDK 1.1.1 で動く例もありますが、 Java から JavaScript を呼び出すときにうまく動かない こともあります。 影の主役 LiveConnect Netscape Communications は、 JavaScript と Java を繋ぐ機能のことを、 LiveConnect と呼んでいます。 LiveConnect に働いてもらうための特別な設定や呪文は とくに必要ありません。使っている Web プラウサが、 JavaScript と Java の両方を実行できるようになって さえいればよいのです。たとえば、 Netscape Navigator 3. x では [Qptions] メニューで、 JavaScript や Java を 実行可能にする指定ができるので、どちらも実行できるよ うに設定してから試してみてください。 これ以降の例では、 web プラウザとして、とくに断 わらないかぎり Netscape Navigator 3. x を使います。 Java のほうは、 JDK 1.0.2 を利用するものとして話を進 めます。 JavaScript で Java する 最初に紹介するのは、 JavaScript から Java のプログ ラムや変数を参照するガ去です。さきにこちらをとりあげ たのは、前準備や特別な設定が不要だからです。しかし、 Java から JavaScript を呼び出すときよりもトラブルに 悩まされました。 1 工見学点では、ソフトウェア開発者とインターネット関支術者だけを 対象に公開されているようです。 109

3. UNIX MAGAZINE 1996年11月号

連載 / プログラマー入門ーの 図 3 Java 仮想はプラウサのなかにある OA 00 03 05 BF 命令の解析 プログラム Java 仮想機械 Java の中間コード 図 4 専用プログラムがスクリプトを斤して実行 結果の出力 ブラウザ・プログラム スクリプト ( ソースプログラム ) # ! /bin/sh echO 専用プログラム sh など 実行結果 Wi ndOW 命令の解析 結果の出力 スクリプト言語には台本 ( スクリプト ) が必要 コンパイル言語のプログラムは、 CPU か直接実行でき る形式でした。これに対し、スクリプト言言 ) プログラム は CPU か直接実行することはできません。スクリプト言 語の場合には、専用のプログラムがスクリプト ( ソースプ ログラム ) を角財斤し、実行します。 sh や csh などのシェルは、スクリプト言語の代表です ね。 WWW でよく使われている Perl もスクリプト言語 の仲間です。たとえば、 echo " おこしやす というスクリプト・ファイル aaa. sh を、 $ sh aaa. sh と実行すると、 sh プログラムが aaa. sh の内容 ( 、、おこし やす " という文字列を端末ーヒに出力するプログラム ) を解 76 $ perl bbb Perl スクリプト bbb を実行する場合は、 析して実行します ( 図 4 ) 。 Netscape 実行結果 UNIX MAGAZINE 1996.11 て説明する前に、とりあえすこの誤解を解いておきまし し、そうだとすると大きな卍明早です。 JavaScript につい という考えを植え付けてしまったかもしれません。しか → Java ( か JavaScript) を使わなくてはいけない 「 WWW でプログラムを実行する」 皆さんに これまで「初めに Java ありき」で話を進めてきたので、 もう 1 つのプログラム に央します ( 図 5 ) 。 イルを角斤し、実行結果を ( 通常は ) Netscape の画面上 だけではなく、 JavaScript で書かれたスクリプト・ファ Netscape プログラムは Java の中間コードを理解する Netscape です。 実行するのは JavaScript を理解できるプラウザ、つまり もうお分かりだと思いますが、 JavaScript を解断て ラムもたんなるゴミになってしまいます。 してくれないと、あなたがせつかく徹夜して作ったプログ ログラムはありません。しかし、誰かが台本を読んで実寅 のように JavaScript を角斤して実行する javascript プ と同しように動くはすですが、 sh あるいは perl コマンド JavaScript もスクリプト言語なので、シェルや PerI いよいよ真打ち、 JavaScript の登場です。 JavaScript も台本を読む のようにします。

4. UNIX MAGAZINE 2001年3月号

図 3 図 4 連載 JavaServer Pages— アプレットでダイナミックなページを生成するプロセス ページを返す ② ) 指定された Web ① web ページ要求 JavaScript でダイナミックなページを生成するプロセス ( ④クラスファイルを返す ファイルを要求 ( アプレットのクラス ② HTML を返す ① web ページ要求 クライアント Web ブラウザ 実行結果を表示 ( ① HTML とスクリプトの クライアント Web ブラウザ のようなプログラムを HTML に当します。 Web プラ ウサは HTML に埋め込まれた JavaScript プログラムを 解釈し、プラウサ上で実行します ( 図 4 ) 。 JavaScript もアプレットと同様に Web プラウサ側で ローカルに実行されるので、 Web サーバーヘアクセスす る必喫がなく反応が速いという利点があります。 JavaScript にはアプレットにない利点もあります。ア プレットは、 Web プラウサ上でアプレットの外側に表示 されているものを制御できませんが、 JavaScript はプラ ウザ上のさまざまなものを制御できます。たとえば、 Web プラウサ上てマウスがクリックされたとき、アプレットは 自分の領域内ならそれを本剱日し、クリックした位置に応し て表示を変更できます。しかし、領域の殞則をクリックさ れてもそれを検知できません。つまり、同しページにフォ ームのボタンか表示されていても、アプレットにはボタン か胛されたことを知る手段がありません。これに対して、 JavaScript はページ本を制御できるので、フォームの 82 HTML コード く applet … > </applet> HTML ファイル アプレットの コード クラスファイル Web サーバー サー / ヾー HTML コード <script ... > スクリプトコード </script> HTML ファイル Web サーバー ボタンカ甘甲されたり、表示されているイメージ上をマウス か移動したイベントを捉えて処理できます。 JavaScript は、 ・ HTML との親和性のよさ ・ユーサーの操作に対する反応速度 ・小さなプログラムの作りやすさ サーバー UNIX MAGAZINE 2001.3 うになりました。なお、 機能か拡張された結果、 Web サーバー側でも動かせるよ しか動きませんでしたが、のちにイ士様や web サーバーの JavaScript フログラムは、当初は Web プラウサ上で で正しく動かないケースがあります。 だし、 JavaScript もアプレットと同様に、互換生が原因 するべージの大半は、 JavaScript で作られています。た ています。インターネット上で目にするアクテイプに反芯 など、 Web 上での GUI の作成に適した多くの利点をもっ

5. UNIX MAGAZINE 1997年7月号

フログラマー入門 JavaScript(9) 荒井美千子 「いやー、はんまに今回は大変だったわ」 可カゞ ? 」 「はら、今度は Java と JavaScript を繋ぐって予告して たでしよ」 「そういえば、こしばらく、せっせとプラウザと闘って たみたいやな。で、勝ったんか ? 」 「うーん・・ それがいろいろ引っかかって」 「もしかして、でけへんかったとか ? 」 「かろうじて全敗を免れたってところかな」 「そないなこと言うて、今月の原稿どないすんねんな ? も う、締切り、過ぎとるがな」 「そうそう、そうなのよ。だから、こは開きなおって失 敗談も書こうかと思ってるの」 JavaScript と Java を繋ぐ機能を利用すれば、 Java- Script から Java のメソッド ( 関印を呼び出したり、逆 に Java から JavaScript を呼び出したりすることカき ます。 これでもう、 「 JavaScript ではシステムに近い処理かて、きない」 「 Java ではアプレットの殞則の世界を操れない」 などと、嘆く必要はありません。相壤こ利用しあうことで、 これまでよりすっと柔軟な処理ができるようになったの です。 ・・と、華々しく紹介するはすだったのですが、いざプ ログラムを書いてみると、しつにさまざまな部分に落し穴 がありました。そこで、今回は、、うまく動かなかったケー ス " も含めてお話しすることにしましよう。 、うまく動か なかったケース " の解去をご存じの方は、ぜ乙扁集部ま 108 でお知らせください。 最初に、 JavaScript と Java を繋ぐ背景について簡単 に説明しておきます。 JavaScript の′く一ジョン 現在、製品として提供されている JavaScript のバー ジョンは 2 不頁です。 Netscape Navigator 2. x ととも に初めて登場したのが JavaScript 1.0 です。現時点で の製品の職万版「 Netscape Navigator 3. x 」に対応して いるのは、 JavaScript 1.1 です ( 表 1 ) 。 JavaScript と Java を繋ぐ機能は JavaScript 1.1 以降で利用できるの で、とりあえす Netscape Navigator 3. x を用意してく ださい。則点 ( 1997 年 5 月初め ) では、新しい Web プラウザ「 Netscape Communicator 0 版」が公開され ていますが、 Communicator の公式リリースでサポート される JavaScript のバージョンは 1.1 なのか、 1.2 なの か、はたまた 2.0 になるのかはいまのところ謎です。 ありがちな話ですが、 Netscape Communications が JavaScript 1.0 を出したころは、バージョンについてあ まり深く考えていなかったようです。同社の Web«— ジで公開されている多くのドキュメントでは、 Netscape Navigator のバージョン番号は頻繁に出てきますが、 表 1 Netscape Navigator と JavaScript の 予備知識 / ヾー・ジョンの文寸応 Navigator Netscape Navigator 2. x Netscape Navigator 3. x Netscape Communicator JavaScript JavaScript 1.0 JavaScript 1.1 JavaScript ? UNIX MAGAZINE 1997.7

6. UNIX MAGAZINE 1996年11月号

連載 / プログラマー入門ー② ・既存のデータをほとんど使用せず、通イ言速度か問題にな るような処理には Java (JavaScript) が適している たとえば、 WWW サーバーが管理している複数の HTML ファイルの内容を、 grep コマンドで単純に全文 検索する処理を考えてみましよう。 大量のデータをやりとりする危険を冒してもいいのな ら、クライアント上のプログラムから実行できないことも ありません。しかし、ふつうに考えると、このような処理 は CGI でおこなうべきでしよう。 もう 1 つの例は足し算です。ューサーが入力した 2 つの 数字 : を足して、その結果を表示する処理を考えてみます。 足し算では、 WWW サーバー上のデータもクライア ント上のデータも不要なので、どちらの方式で実現して もかまわないようなものですが、通信回纔 - ヒをデータが 行き来するオーバーヘッドを考えると、この処理は Java (JavaScript) です一、くきですね。 これで、 CGI と Java (JavaScript) とをどのように 使い分ければいいのカ功ゞ、のみこめたのではないでしよう クラスがあり、次のようなメソッドがあらかしめ用意され 嬉しいことに、 JavaScript には Java と同様の Date デジタルお t を作ってみましよう。 今回は Java のソースコードをもとに、 JavaScript 版 作った日 t アプレットの Java のソースコードです。 ノアプレットを作りました。リスト 2 は、そのときに Java のクラスライプラリをとりあげたときに、デジタ 動かない時計 はこんな働きをする " ということを素直に感しとってくだ いう方もいるでしようが、とりあえす今回は、、このコード す。文法を知らすにソースコードを読むのは気色悪い、と 飛ばして、簡単な例で雰囲気をつかんでもらおうと思いま 今回は JavaScript の考え方や文法、工臨龠などはすべて おきましよう。 る前に終ってしまいそうなので、そろそろ実例を紹介して のんびり説明していると、 JavaScript の書き方に触れ 簡単な JavaScript の例 UNIX MAGAZINE 1996 ユ 1 リスト 2 import import import public 時計アプレットの Java のソースコード java ・ applet . * ; Java. util. *; java. . *; class C10ck extends App1et implements Runnab1e { Thread tick = Ⅱ u11 ; public void init ( ) { Font . BOLD, 24 ) ) ; setFont (new Font (getFont ( ) . getName ( ) , public void start() { if (tick = null) { tick = new Thread(this) ; tick. start() ; public void run() { if (Thread. currentThread() h 土 le (tick ! = null) { repaint ( ) ; try { Thread. sleep ( 1000 ) ; = = tick) { } catch (InterruptedException e) { showStatus ( "sleep ( ) is interrupted" ) ; public void stop() { tick = null; public void paint(Graphics g) { d = nev Date(); Date 79 g. drawString(timestr , 50 , 100 ) ; String timestr = datestr. substring()l , 19 ) ; String datestr = d. t0String() ; リスト 3 は、 JavaScript で作った時計のソースコード getTimeZoneOffset() ・ toString() 、 toLocaleString() 、 toGMTString() ・ setYear() 、 setMonth() 、 setDate() 、 ・ getYear() 、 getMonth() 、 getDate() 、 ています。

7. UNIX MAGAZINE 1997年6月号

フログラマ ー入門 荒井美千子 JavaScript(8) 今回は、 JavaScript の文法についてお話しします。と はいえ、以前にも書いたように去の説明は基本的に退屈 なものです。そこでここから先は、 「 C 、 C 十十あるいは Java を知っている」 読者を対象に C / C 十十や Java とは異なる部分を中心に とりあげます。以下は、これから説明する内容のキーワー ・新しいオプジェクトの作成 ・ with 文 ・匍屆構造 ・演算子 変数の旦言 . 雪豐 ・ HTML の正しい書き方 90 語です。もちろん、 grep とは UNIX の文字歹呀鑠コマンドのことてす。 1 私を含むイ・ 1 名 ( ? ) カ硬っている、目で grep する " という意未の用 の書き方の約束事から始めましよう。 HTML のなかに いての説明というのも変則的ですが、とにかく HTML 言語の文法説明の最初が、ほかの言語の書き方につ つばなから HTML 講座になんねん」 「今日は、 JavaScript の文法の話なんやろ。なんで、しょ Ⅱ TML の書き方の問題点 の部分だけを拾い読みしてもよいでしよう。 か書ける方なら、、目 grep"l で、興未のあるキーワード よいでしよう。すでに、ある程度 JavaScript プログラム JavaScript に慣れていない方は、最初から順に読むと JavaScript プログラムを埋め込むときには、どのように 書けばよいのでしよう。 「そんなもん、連載の最初のころに説明してたやん」 「お、よく憶えていたね。でも、あれでは十分しゃないん だよ」 この記事で JavaScript の紹介を始めたばかりのころ、 HTML ファイルに JavaScript プログラムを書くカ去を 説明したことがあります。そのとき、 <script 〉タグを使 って、 く script Ianguage="JavaScript"> JavaScript プログラム く /script> のように言己すると説明しました。 しかし、本当はこの書き方はお行儀がよくありません。 たとえは、リスト 1 の HTML を Web プラウザで表示さ せてみましよう。 JavaScript 対応のプラウサで表示させると、期待どお りの表示になります ( 図 1 ) 。しかし、 JavaScript に対応 していないプラウザ 2 で表示させると、適度な改行のない プログラムらしきものか表示されてしまいます ( 図 2 ) 。 自分だけ、もしくはイントラネットのように身内だけで 使うのなら、利用するプラウサに注意すればよいので少々 おかしな表示になってもかまわないでしよう。しかし、不 特定多数が見るインターネットで図 2 のようなページを公 開するのは、あまりよいことではありません。お堅い会社 やお彳斤では、読者 ( ビジター ) からの「このページは変 こで ( よ MS lnternet Explorer のかなり前のバージョンを使いま 2 した職斤のバージョンは JavaScript に対応しているため、このよう な海パにはなりません。 UNIX MAGAZINE 1997.6

8. UNIX MAGAZINE 1996年11月号

連載 / プログラマー入門ーの リスト 3 JavaScript で作った時計のソースコード d = new Date(); datestr = d. t0String() ; timestr = datestr. substring()l , 19 ) ; 2 つのソースコードを見くらべると、 、止。叩 2 ー国は / / / 0 レ h / 。 lo 。 k html] 図 8 JavaScript のソースコードを Netscape で新 document . write(timestr) ; 日同口を OP PHnt datestr ・ s リ bs れ g 第 1 の引 d001 新印・え t を ( t ⅲ estr) : d = れ色当 D ( ) 引 datestr = d.toString(); tinestr Wh 0N8 回 WhaesCooU Handb0ök N 引砿 NetDirectory す。 にツー Docm 物 です。スクリプト言言韶 ) 気軽さで、変数の型宣言は不要で グラムカ昆在している例です。いまのところ HTML ファ リスト 4 は、 HTML ファイル中に JavaScript のフロ ばなりません。 にするためには、 HTML の流儀に即した言当にしなけれ JavaScript も含めて、プラウサか整形できるファイル とは違うものが表示されてしまいます ( 図 8 ) 。 ですが、これをこのまま Netscape に読み込んでも、意図 いちおう、 JavaScript のプログラムはリスト 3 て元成 HTML に呪文を書き込む て、電車に乗り遅れたりしないように注意してください。 進めてくれるわけではありません。この日お t の表示を信し ロードした時点の時刻を表示するだけで、自重加勺に秒針を ところで、 JavaScript 版の日 t は HTML ファイルを し (document. write (strtngs) ) " ます。 すが、 JavaScript はカレントの場所に文字列を、書き出 わりにプラウザ上に文字列を、、描画 (drawString)" しま る部分に違いがあります。 Java は、イメージデータの代 点は同しですが、プラウザ上に現在時刻の文字列を表示す ・ datestr でローカル日該リの文字列表現を取り出す 現在時刻を示すオプジェクト d を作る 80 リスト 4 JavaScript のソースコードを追加した HTNIL フ アイル く html> く head> く tit1e>C10ck く /title> く /he ad> く body> timestr = datestr. substring()l , 19 ) ; datestr = d. t0String() ; d = new Date(); く script 1anguage="JavaScript " > document . write(timestr) ; く /script> く /body> く /html> 図 9 JavaScript で作った時計 町Édit m k ミを ions 旦ⅳま y えメ国 e 0 叩色ー [ 0 lock] ロ X 0 れ H 聞 Olet Seareh Ptint h N & 亡 01 : 14 : 51 イルでは、 JavaScript のプログラムの部分をく script > タグで悃み、 く script 1anguage="JavaScript"> JavaScript プログラム く /script> というふうに言己してください。これで、図 9 のようにプ ラウザ - 日こ日該リか表示されます。 JavaScript のさまざまなバリエーション 今回は、もっとも簡単と思われる例を 1 つだけ紹介し ました。次回からは、 JavaScript を書くための基礎知識 や、 JavaScript の文 ~ 去、 HTML ファイルの言己力去な どを順にお話ししていきます。 ( あらい・みちこ ASTEC) UNIX MAGAZINE 1996.11

9. UNIX MAGAZINE 2002年4月号

図 25 メニュー表示を変える JavaScript とメニューを含む Web ページ く html> く head> く meta http—equiv=" content—Type " content="text/html ; charset=EUC—JP" > く meta http—equiv="Content—script—type" content="text/javascript"> く tit1e>NETSCAPE RELOAD IMAGES WITH JAVASCRIPT く /title> く script 1anguage="JavaScript " > function set—image(url) document . images [ 0 ] . src = u て 1 ; function preload—image (url) img = new lmage ( ) ; ur1 ; 1mg . く /script> く /he ad> く body> く a href="http://IocaIhost/DynamicMenu/unix.html" onMouseover="set_1mage('mouse_on. gif ) ) " onMouseout="set—image( 'mouse . gif ' ) " > く img name="mouseout" src="mouse . width="300" height="40" border="O" aIt="Can reload image?"> く /a> く script language=" JavaScript " > preload—image( 'mouse—on. gif ' ) ; く /script> く /body> く /html> マウスカーソルがメニュー項目上に移動してくると、 JavaScript で書かれた set-image() でファイル mouse ー。 n. gif の画象を表示します ( 図 27 ) 。このときに表示され る画像は、 JavaScript で書かれた preload-image() 関 、 Veb ページの更新 じめ読み込まれています。 の部 : 分で HTML ファイルがロードされたときに、あらか xmg. = UNIX MAGAZINE 2002.4 ータを転送するための HTTP (HyperText Transfer 動的に更新するわけではありません。指定されたときに、 プラウザは、つねに Web ページのデータを見張って自 web プラウザで表示したページを見てみましよう。 Web 次に、画像ファイル mouse-on. gif を変更してから、 図 26 マウスカーソルがメニュー項目上にないときの表示 E'le 印代第わ を NETSCAPE R 日 .0 ^ D IMAGES 、日 JAVASCRIPT - Netscape を回区 3 蝨のはは 0 第 め記曲ル博 0 ・ 0 ⅳ Mouse Out t 長リ Done によって、 Web プラウサは新しいファイルを取り込もう 読み込み " や、、更新 " などの操作を実行します。この操作 編集後の画像を web プラウザに反映させるには、、、再 の表示は自重加勺には変わりません。 サーバー上の画像ファイルを編集しても、 Web プラウザ ProtocoI) を使って読みにいきます。したがって、 Web とします。 99

10. UNIX MAGAZINE 1997年1月号

図 14 ボタンの表示例 よ i 塒阜 m k を朝 , 第旦“。 Réload 連載 / プログラマー入門ーの , を N 三。叩 2 ー [button ボタン ] 0 ロ してもいいよ く i nput type= button val = 押してもいいよお " > けではなく、ボタンか胛されたときの処理を JavaScript ンのような特別な働きがあらかしめ割り当てられているわ 部品はいわゆるボタンです。 submit ボタンや reset ボタ JavaScript で役立つ部品を紹介しましよう。、、ボタン " JavaScript でも扱えますが、それら以外にもう 1 つ 普通のフォームで扱えるフォームの部品は、すべて ボタン部品 いろ動かしてみましよう。 以降では、 JavaScript を使ってフォームの部品をいろ して CGI プログラムを実行することもできます。 もちろん、従来のフォームのように、 submit ボタンを押 ボタンを押したりしたときにプログラムを実行できます。 押される前でも、テキスト入力フィールドに入力したり、 しかし、 JavaScript では違います。 submit ボタンが しもできません。 では、あなたの作った CGI プログラムからはなんの手出 クスやリストお尺できますが、 submit ボタンを押すま input タグを使って、 で書くことかできます。 追加し、何かイベントが発生したときにプログラムを実行 う。 JavaScript ではフォームの部品にいくつかの属性を 活躍してもらいたいので、もうすこし詳しく説明しましょ ボタン部品はこれから説明する JavaScript の実験で こなわれません。 れはただの箱ならぬただのボタン、実際の処理はなにもお す。このボタンは押せば反芯しますが、プログラムがなけ と書けば、とりあえす図 14 のようなボタンが表示されま く input type="button" value=" 押してもいいよお " > 114 できるようになりました。以下は、 JavaScript で使うと きの HTML です。 く input type="button" name=" 名月リ " value=" ラベノレ文字列 " イベントの種類 = " 処理 " > name 属性は部品を区別するために付ける名前、 value 属性はボタンのラベル文字列です。 JavaScript の大きな 違いは、イベントを処理するためク旨定が、 イベントの不鶤頁 = " 処理 " でできることです。 、、イベントの不頁 " には、 ・クリックした 値か変更された などのイベントを表す文字列を指定します。、、処理 " には JavaScript のプログラムを書きますが、定番の手法はど こかで定義した JavaScript 関数を呼び出すことです。 たとえは、 「ボタンカ甘甲されたときに、 hello() 関数を呼び出す」 という処理は、 く input type="button" name="He110Button' value = " He11 。関数を実行 " onC1ick="he110() " > と書きます ("onCIick" はクリックイベントを意味しま す ) 。 フォーム・オプジェクト フォームの部品で扱えるイベントの不頁や処理の書き方 を説明する前にフォーム・オプジェクトの扱い方を説明 しておきましよう。これが分かれば、フォームの部品の 状態を JavaScript で変化させることかて、きるようになり ます。 JavaScript の世界では、現在表示している文書は doc- ument オプジェクトでした。さらに、文書中のフォーム もオプジェクトとして参照できます。フォームを参照する こでは簡単な去を ガ去はひと通りではありませんが、 1 つだけ紹介します。はかの去も知りたい場合は、本屋 さんで分厚い JavaScript の説明書を買ってください。 UNIX MAGAZINE 1997.1