Googleのインデックスページには、スマートフォン(iPhone、Android & Windows Phone)のユーザーをモバイルサイトにリダイレクトするスクリプトがあります。我々が使用するテクニックは次のとおりです。IE9が誤ってモバイルサイトにリダイレクトされる
if (navigator.userAgent.match(/iPhone/) && ! navigator.userAgent.match(/iPad/)) {
window.location="mobile.html";
}
else if (navigator.userAgent.match(/Android/) && ! navigator.userAgent.match(/Android 3/)) {
window.location="mobile.html";
}
else if (navigator.userAgent.match(/Windows Phone/) || navigator.userAgent.match(/Zune/)) {
window.location="mobile.html";
}
我々はいくつかの理由でそのuserAgentには、上記のいずれかの文字列が含まれていないにもかかわらず、モバイルサイトにリダイレクトされIE9上でこれをテストするまで、すべてが完璧に働いていました。 IE9のためのuserAgentには、次のとおりです。
のMozilla/5.0(互換; MSIE 9.0; Windows NTの6.1; WOW64;トライデント/ 5.0)
IE8がこのように振る舞うや他のプラットフォームをしていません。スクリプトが間違っているのでしょうか、それとも復讐したことでもう一度IEがストライキしましたか?ありがとう。
のために作成した実際のディレクトリにwindow.locationの=「mobile.html」に変更
のWindows 8の電話を使用して私のために働きましたコードをデバッグすると、どちらが落ちているのか分かりますか? – Adam
@RMX - 私はアダムに同意します。各制御構造で 'console.log(navigator.userAgent);'を実行して、どの条件が一致しているのか、そしてどのuserAgentが報告されているのかを確認してください。 – jaredhoyt