08/06/15 09:56:08 /k+QMkzO
>>9 で紹介されているページのスクリプトを見てみた。
バージョンの確認は W_COM_V02_FLA_VerChk() って関数でやっていて、判定文は
FLA_VER = navigator.plugins["Shockwave Flash"].description.charAt(16);
となっていた。
つまり、バージョン情報の「先頭から17文字目だけを見る」仕組みですね。
Ver.10 をインストールしてある場合、バージョン情報は
"Shockwave Flash 10.0 b218"
という感じになります。17文字目は "1"なので、このスクリプトは
「バージョン1はバージョン6より古いので、あたらしいプレーヤーが必要」
と誤判断してしまう仕組み。
Y2Kと原因は一緒ですね。ユーザーやAdobe様に対応する手段は無いと思う。
誤判断スクリプトを使っている何千というデザイナさんがエッチラオッチラと
コードを直して行くほかに手段は無いですね。
結構根が深いです。ニュースサイトで「バージョン10問題」と言って取り上げる
価値のあるネタかも。