JavaScriptでできること、できないこと

JavaScriptを使ったコンテンツと言ったら、何を思い浮かべるでしょうか?プルダウンメニューでしょうか?ロールオーバーでしょうか?ポップアップウィンドウでしょうか?

JavaScriptを使った動きのあるページを見て、自分もJavaScriptを使えるようになりたいって思って、あれこれ調べている人は、JavaScriptで他にどんなことができるのか、そしてどこが限界なのか知っておくと、より意欲的に習得することができると思いますので、紹介します。


HTMLは、その名の通りテキスト記述のための言語であり、CSSはそのHTMLを装飾するためのものです。これのみで作られたホームページは、インターネット上で読むことのできる「本」と何ら違いありません。

あえて、違いをあげるなら、うまくリンクを貼ることによって、少なくとも、「一般書籍の詳細はP219へ」よりも楽に関連する内容を見ることができるくらいでしょうか。

そこでJavaScriptの出番です。JavaScriptでは、これらにもっと楽しい要素を加え、インターネットならではの表現が比較的簡単に可能になります。

JavaScriptを使えば、書籍にも雑誌にも新聞にもラジオにもテレビにも不可能だったリアルタイム双方向性(制作者と閲覧者)が可能になります。ちょっと語弊があるかもしれませんが、ゲームに近いです。


JavaScriptで作られたホームページを想像してみましょう。


例えばそこには時計があります。夜になれば背景が暗くなり、夜専用のコンテンツが登場します。朝になれば背景は白くなり、普通の内容に戻ります。

例えばそこには入力フォームがあります。閲覧者の入力によって、様々な変化が起こります。簡単なデータベースみたいなものだって存在します。

例えばIEとネスケで、それぞれちゃんと動くようにします。

などなど。


さらに、DHTMLを使えば、ホームページ内の要素を自在に操ることが可能になりますが、その前に、まず基本となるJavaScriptを身につけましょう。


趣味でHTMLとCSSを使ったホームページを持つことを自己主張とするなら、JavaScriptを使ったホームページは自己表現です。あなたの思っていることを書き連ねるのに飽きたら、今日からは、自分の想像力を表現してみて下さい。


おっと・・・本題からそれてきましたが、JavaScriptでできることは、CGIでしかできないこと以外全てです。

つまり、制作者が想定している限りの閲覧者のアクションに対する結果をJavaScriptで作っておけば、そのページは、閲覧者のアクションによって様々に変化するというリアルタイム双方向性(制作者と閲覧者)を持ちます(すくなくとも持っているように見える)が、

例えば、アクセスカウンタや掲示板のように閲覧者同士のアクションや書込みによって、何か新しいページ(ファイル)を作るといったようなことは、JavaScriptにはできません。