既存コンテンツの Ajax への変換
先日書いたときからずっと Ajax 勉強モードです。というのも自分が制作に関わっているサイトってそれ使えばよりよくなるものが多いから。実際には更新等の発注を受けなきゃ公開に至らなかったりすることだったりしますが手元のバックアップを見直して書き直してチェックしてます。イイモノになれば当然クライアントに連絡して更新業務として公開に至ります。そういうことができるのはサーバー含めてこちらで管理しているようなサイトに限られるんですが。
ま、クリエーターとして Ajax はとにかく面白いです。この技術実際のトコロもっと以前から少しは実験してたんだけどこれも結局ブラウザの対応状況ですね。MacIE や Opera が対応していないという時点でそりゃあ困ると思って企画段階でボツったりするわけです。いやだいたいそれはクライアントからいわれることじゃなくて制作側の自分の判断です。IE で動作すればとおっちゃったりするけどそういうサイトは作りたくないと考えているのは自分です。先方から IE で見れればいいよなんてことはあっても意地で互換対策する。
Opera は 8 で対応してくれました。だけど今後アップデートのない MacIE が非対応。そのへんがひっかかる訳ですけど、そこでやりくりを考えるんです。どういうことをといえば「Ajax がサーバーサイド処理を JavaScript でひっぱり出す(いい言葉がでてきません)ことなんだから非対応環境だったら普通のサーバーサイド処理で動作すればいいジャン」ってこと。簡単に書けば対応だと return false; するトコロを true にすればどう?
キチンと作るっていうのは自分の中ではそういうことなんです。Ajax であろうとなんであろうと、そこで使っている機能が働かない環境での代替え処理がなんらかのカタチでできてコンテンツ自体がユーザーに届くこと。<noscript>JavaScriptが動かないと見れません</noscript> じゃなくて代替えコンテンツを見れるように作る事。
とか、エラそうに書いておいて、大分以前に作ったのを Ajax 仕様にしようとチェックしてたら JavaScript 切ったら思いっきり「何も動かない」モノだった。うへー。まずはそのへんの仕様変更からやらなきゃならなくてなかなか Ajax まで至らないという(笑)そうです。そういう「環境依存のない記述」が一番大変なんですよね。Ajax が動作しない環境、JavaScript 非動作環境では(通常の)サーバーサイド処理を使うような記述を考えています。このへん常に気遣っているようでつい忘れがち。ちなみに Google Maps では JavaScript 切ると見れません。このへんは問題ないと思う人はいるだろうし、当然だという方もいるでしょう。でも自分はそうじゃないようにできるんじゃないのかな?ととりあえず考えます。
自分が Ajax を使おうと考えてるものは、もとネタをサーバーサイドで取得して、その大量の情報を HTML に「先読み」して JavaScript の DOM 処理(スクリプトで切り替える)させてる箇所が多いから、そういうのが「必要時にのみ取り出す」ようになれば軽量化(あるいは処理分散化)できるかもっていうことでやってます。基本は分かった気でいるけど、うまいこと動かない状況があったり、サーバー負荷とかも考えたりすればもしかすると使わないほうがいいんでないか?とかいろいろ考えたりしながら実験中でございます。
なんか面白いチェックページ作れたら NOTE にまとめようと思います。今は業務でやってるヤツをいじってる状態で遊びで面白いモノ考えたいですね。
JavaScript 切ってアイテム修正したらそんなアイテムないっていわれた(笑)
2005-06-20 18:06 | WebCreate | ichiro | permalink


Comments
コメントはまだありません