Ajax

Ajaxとは、Asynchronous JavaScript and XMLの略で、サーバーとの非同期ページ更新を実現するためのものだ。Epilogueでは、6月下旬からPukiWiki Plus!を用いており、その機能の一つに編集画面上部に表示されるRealtime Previeというのがそうだ。このボタンをクリックすると、編集しているテキストが文字通りすぐに上に反映される。

実を言うと非同期更新は、自分にとって割とよく使っていた技術でヴァナ・ディール旅先案内所(現Vana'diel Wiki)の時点でマップの階層チェンジといった部分で使われてたし、箱庭諸島2+をMac版IEに対応させるときもこの技術は使われていた。もちろん、サブドメインによって、ページ読み込み完了時にロゴが切り替わったり、一部の文章が書き換わったりするのも同じである。

しかし、Ajaxと呼ぶにはまだまだな所である。例えば、ヴァナ旅先案内における、非同期通信は、document.[id].srcなどで画像のURLを書き換えて、必然的に別の画像を読み取らせようとしているだけであって、少しでもJavaScriptをかじったことがある人なら、たいしたものだとは思わない。箱庭諸島2+も、hakow.cgiが出力したデーターをhako.jsで解析して出力しているだけで、Ajaxには至らない。

Ajaxとは、もっとサーバーと密にやりとりをしていると考えられる。最近最も有名なのはGoogle Mapsだろう。これまでのマップサイトは、画像の任意な場所をクリックすると、そこが中心になるように画面全体が更新されてきた。しかし、Google Mapsでは、ドラッグだけで移動拡大縮小がシームレスにできてしまっている。

これを見た当時、自分のWebの常識は根底から覆った。車のナビ並みのことをやり遂げているのだ。JavaやFlashなしで。