2009年1月27日火曜日

AjaxとBubbleToolTips

これもweb絡みのお話。ちょっとネットでAjaxについて調べてみた。一番興味を引かれたのはアムステルダムのサッカーチームだったけど、これはちょっと領域外。問題のAjaxは一言で言うと、JavaScriptを使って、ページの再読み込みをあまりさせないで、かつ、マウスの動きに応じてボタンの色が変わったり、写真が入れ替わったりするってやつみたい。同窓会のページはcgiで再読み込みしまくってるから、Ajax風にできないかと思って少し挑戦したけど、めんどくさくなってやめちゃった。それでも何かおもしろい事できないかと思って、メニューボタンの上にマウスを持って行くと、色が変わるようにしておいた。これは色の違う画像を用意しておいて、onMouseOverで違う色の画像に置き換えて、onMouseOutで元の色の画像に戻してるだけだけどね。
 それと、大きめの集合写真の顔の辺りにマウスを持ってくると、人名を吹き出しで表示するようにしてみた。どうしたかというと、BubbleToolTipsと<area>タグを使ってみた。BubbleToolTipsは簡単に風船状の吹き出しをつけてくれるスクリプト。基本的にJavaScriptで書いてある。だけど、今回の用途にはちょっと改造が必要だった。それは<area>タグに対して作用するようにしたかったから。

2009年1月23日金曜日

cgiとutf8とphpとjs

追記)2017/6に,FreeBSD で fine-uploader を使ってみた(その1)というのを書いた。 そこでは fine-uploader という JavaScript のライブラリを使ったファイルのアップローダーについて書いている。 Uber Uploader はすでに古く更新されていないので,fine-uploader など新しいアップロードライブラリを使うことをお薦めする。
追記)2011/8時点での Uber-Uploader の最新版である Uber-Uploader 6.8.2 についてはUber-Uploader 6.8.2 の使い方(その1)で述べているので,参考にしてみて欲しい。

最近、同窓会に出席して同窓会のwebを担当することになった。とりあえず簡単に、と思って作り出したが、これまでいくつか作ってきたwebで培った技術を使いたくなってしまった。とりあえずはcgiを使ってメニューなど並べてみたりした。当初、JISコードで作ってみたが、最近の趨勢としてはUTF-8で作るようになりつつあるみたいなので、途中でページを全てUTF-8にしてみた。FreeBDS上に作っているのだが、最近はnkf -wでUTF-8にしてくれるようになっていた。いつのまに...
 さらに、そこにBBS(掲示板)を載せてみた。一から作るのはめんどくさいので、世の中に落ちてるcgiのソフトを拾ってきて,載せておいた。一発で動くかと思ったが,これが意外と手間取った。トラブった原因としては,一つには文字コードの問題。当初JISコードでwebを作っていたので、JISコードにしてみたら,全角の「:」などが文字化けして実行時にひっかかかる。そこで仕方なくShift_JISにしたらうまくいった。これはUTF-8にするのはかなり手間なのでやめておいた。それと改行の問題。もともとwindows用に書かれているらしく,改行コードがunix用になってなかった。そのままだとこれがうまく働かない。仕方ないのでこれも改行コードを変更してみた。ここでもnkfが活躍した。というか、FreeBSD上で他の方法を思いつかなかっただけなのだが。nkf -dってすると改行コードがLFのみになるみたいやった。あと,cgiが実行可能となっている下に作業用のdirectoryを置いておいたが,そこにある画像ファイルが表示されなかった。どうやらcgi実行可能なdirectoryの下に置いてはいけないみたい。これはcgi実行directoryから出したらうまくいった。でもBBSってみんな使うのかなぁ?