Vista+IE9でalphafilter.jsの挙動がおかしい

この前alphafilter.jsをありがたく使わせてもらってたら、どうも自分のPCの時だけIE9でのデザインが崩れる。といっても、透過PNGが表示されないってだけなんだけどね。

ソースを見たら下記の様な判断。

if (navigator.userAgent.indexOf("MSIE")!= -1 && navigator.appVersion.indexOf("6.0")!= -1) {

これだとVistaとServer2008?を使っていた場合、NT 6.0がappVersionに含まれている為、引っかかってしまい上手く動かないのかも。この記述自体ちょっと古いブラウザにも気を遣ってた感じもしますが・・・

対応ブラウザをさて置けばmatchを使った方が良い感じもします。

if (navigator.userAgent.match(/MSIE\s*6\.0;\s*/i)) {

NT7.0w なんてバージョンが出る前にindexOfでのUA判断を見直さないといけないのかもしれない時期なのかな。

とはいえ、IE6が終息するまでの間だ引き続き、ありがたーくalphafilter.jsを使わせてもらいます。

感謝
http://blog.webcreativepark.net/2007/02/01-233315.html