2005-07-17 (日)
*JavaScript on Firefox
なんだか,JavaScriptを使ったページの中には,Firefoxで表示できないものがあるなぁという問題.
var isIE=(document.all && (appVer >= 4));
というような文.appVerはabout:configの設定でごまかせるとして,document.allはどうなのか.試してみるとFirefoxにもオブジェクト自体は存在しているみたい.でも,上の式はfalseとして扱われる.
var isIE=(String(document.all)!="undefined" && (appVer >= 4));
無理やりだけど,こうすればFirefoxでもオブジェクトの存在が分かる.他のブラウザでも動くかどうかはしらないけど.(isExistみたいなメソッドがあれば確実なのだろうけど)
それにしても,いきなりappVerで判断するとは強引過ぎるような….完全にIEとNNのことしか考えてない.多くの場合,JavaScriptでやりたいのは画像や文字を入れ替えたり,何かを動かしたりする程度のことだから,document.getElementByIdを使ってやれば,最近のブラウザならIEでもMozillaでも動いてくれます.
まぁ,一番の問題はホームページ作成ソフトにあるのだろうけど.自分でJavaScript書く人の多くはこんなことしないだろうし….