私たちのサイトでは、現在約Windows 7を実行しているIE7ユーザーの50%。ただし、Win7はIE8とともにリリースされ、何かが正しくないことを意味します。これに基づいて、最新のIEブラウザーがサイトでIE7互換モードに入ると仮定しました。そのため、IE7のサポートを無効にするために、サイトに「X-UA-Compatible = Edge」メタタグを配置しました。ただし、1週間後、IE7(およびIE8)ユーザーの割合は、今年の初め以来初めて上昇しました。 X-UA-Compatibleのドキュメントを見ると、サイトをoldモードにするために使用されるのはmeantです。
そして、はい、私たちのサイトには非常に多くのユーザーがいるので、IE7が一意の訪問者の2%未満になるまでIE7を殺すことはできません。
編集:<!doctype html>
を使用します
EDIT2:私たちの環境でも互換モードを再現することができませんでした
それでは、計算が正しくないことを確認しました。私たちのプロバイダーは、「訪問」数に基づいてレポートを提供していました。訪問は、ユーザーがウェブサイトで費やす時間に基づいて計算されます。ただし、IE7ユーザーはめったにいないかもしれませんが、Chromeユーザーと比較してWebサイトでより多くの時間を費やす可能性があります。つまり、私たちが行った割合は、ブラウザを使用しているユーザーの割合ではなく、「ユーザーが使用しているブラウザに基づいて、ユーザーがサイトに費やす時間」のようなものでした。
IE7のサポートをやめることにしました。計算は簡単でした。IE7用にサイトを調整するためにチームが費やす時間は、同じユーザーから得られる収益の量を考慮していません。一度にコードを調べてIE7のすべての修正を削除することはありません。代わりに、私たちは日々の仕事の一部として時間をかけてそれを行います。これは、サイトがマイナーなグリッチのみでIE7で長時間動作することを意味します。しかし、うまくいけば、IE7でサイトが耐えられなくなるまでに、ユーザーの最後の数パーセントがアップグレードされるでしょう。
互換モードのユーザー数を減らすために、X-UA-Compatible=Edge
フラグを使用してみました。フラグは、HTMLタグとリクエストヘッダーの両方を使用して設定できます。両方試してみましたが、それが数字に大きな影響を与えることはありませんでした。サイトが古いブラウザ互換モードで終了した場合、ユーザーが通常のブラウジングに積極的に進むまでサイトはそのままです。これを回避するために、ユーザーが同じジャムにいるときにGoogle+と同じことをすることにしました:ページの上部にバーを表示するたびにページがロードされます。このバーには、Webサイトの互換モードを終了する方法に関する情報へのリンクが含まれており、終了するまでバーは消えません。
var ua = navigator.userAgent.match(/MSIE [0-9]*/);
var version;
if (ua && document.documentMode !== undefined) {
version = parseInt(ua[0].replace(/[^0-9]/g, ""));
if (version !== document.documentMode) {
alert("Compat mode!");
}
}
IEが互換モードにならないことを確認する他の方法はありますか?はい。ブラウザを標準モードに移行させるDoctypeを使用してください。
<!DOCTYPE html>
トリックを行う必要があります