古い記事
ランダムジャンプ
新しい記事
Ajax: Web アプリケーション開発の新しいアプローチ
<http://antipop.zapto.org/docs/translations/ajax.html>
(via <http://antipop.zapto.org/mt/archives/001248.php>)
Ajax とは "Asynchronous JavaScript + XML" の略称であり、Web におい
て可能であることの本質的な変化を表している。
Ajax アプリケーションは、Web アプリケーションが本来持つ「開始 - 終
了 - 開始 - 終了」というやりとりを、ユーザとサーバとの仲介者 -
Ajax エンジン - を導入することにより、取り除く。
要するにサーバとのやり取りは裏でやる、と。
ポイントは XMLHttpRequest か。ちょっといじってみるか。

以下のページに XMLHttpRequest の Reference や Tutorial があった。
<http://jpspan.sourceforge.net/wiki/doku.php?
id=javascript:xmlhttprequest
>

ざっと読んでみたのでさっそく実践。
サンプルを適当にいじって、「たつをの ChangeLog」の記事をランダムに
ポップアップするのを作ってみた。
クリックするたびにランダムに取ってくる CGI "rand2.cgi" (付録)を
呼び出し、その中身を div に入れてポップアップする([2005-01-18-5]
のを改造)。うーむ、これは手軽だ。XMLHttpRequest、楽しいーーー!!!
くっつきシリーズもこの路線で行くか?

↓お試しあれ。
Show/Hide Random Item


付録:rand2.cgi ソース([2004-11-30-5]のに手を加えた。超やっつけ。
chalow ユーザ ONLY)
#!/usr/bin/env perl
srand;
open(F, "cl.itemlist") or die;
my $line;
rand($.) < 1 && ($line = $_) while <F>;
close F;
my ($url) = ($line =~ /href="(.+?)"/);
open(F, $url) or die;
my $cont = join('', <F>);
close F;
$cont =~ s|^.+<!-- start:.+?>(.+)<!-- end:.+$|$1|sm;
print qq(Content-type: text/html; charset=EUC-JP\n
<html><body>$cont</body></html>\n);
(「無償・無保証・著作権放棄」<http://lifehacks.ta2o.net/byebye-copyright.html>)

メモ:
- FireFox では絶対 URL は xmlhttp.open できないみたい。

関連:
- [を] Ajax でインクリメンタルにヒット数を表示[2005-02-25-1]