Ajax非対応ブラウザへの善処
Opera7.60とかさ
javascriptそのものにも言えることだけど、非対応ブラウザへの対処は重要な問題。代替手段を提供する必要があるのだけど、とにかく対応しているのかしていないのか判定する必要がある。HTTPリクエストヘッダをサーバ側のスクリプトで見て、対応するコードを出力する、という解決策も可能だけど、すべてもブラウザを網羅する必要がある。mendoxaiことはなはだしい。そこで、それをズバっと解決できるのではないかな、というメモ。
そっちで書き換えてくれよ
正式になんと呼ぶ仕組みなのか知らないけれど*1、とにかくjavascriptでコンテンツの内容を書き換えることができる。これで書き換えられるのはなにも文書の内容だけではなくて、例えばa
タグのhref
要素でも可能だ*2。これを利用して、
- まず、サーバ側からは代替手段のほうを出力する
- クライアント側でjavascriptを利用し、Ajaxを利用する*3予定のリンクを非同期に書き換える
- それがうまくいけばAjax利用可能。書き換えたリンクでばんばん非同期通信しちゃってかまわない
- うまくいかないなら書き換え失敗。代替手段のほうが利用される
という流れ。
同様に、javascript対応の有無も確認できる。なかなかに便利、だと思う。