IE を検出するために、ほとんどの Javascript ライブラリはあらゆる種類のトリックを実行します。
- jQuery は、ページの DOM に一時オブジェクトを追加して、いくつかの機能を検出するようです。
- YUI2 は、その
YAHOO.env.ua = function()
(fileyahoo.js
)内のユーザー エージェントで正規表現を実行します。
この回答を読んだ後、それは本当だと思いました.Javascriptで単にIEを検出するには、ページに追加するだけです:
<!--[if IE]><script type="text/javascript">window['isIE'] = true;</script><![endif]-->
<script type="text/javascript" src="all-your-other-scripts-here.js"></script>
これで、window.isIE
次のようにするだけで、すべての Javascript コードに対して変数が設定されました。
if(window.isIE)
...
すべてのページに追加する必要があるため、これが苦痛になる可能性があるという事実に加えて、私が気付いていない可能性のある問題/考慮事項はありますか?
参考までに:ブラウザ検出よりもオブジェクト検出を使用した方がよいことはわかっていますが、それでもブラウザ検出を使用しなければならない場合があります。