0

重複の可能性:
$.browser の代わりは何ですか

$.browser私は、特定のブラウザーに奇妙な修正を適用するために、jQuery の廃止された機能に依存しています。例:

if ($.browser.msie && $.browser.version < 9) {

この機能はjQuery 1.9 で削除されたため、代替手段を探しています。jQuery は機能検出にModernizrを使用することを提案していますが、そのプラグインは必要な機能をカバーしていないようです。この機能の (非) 公式な代替品は何ですか?

4

2 に答える 2

3

このjQuery.browser()メソッドは jQuery 1.3 以降非推奨となり、1.9 で削除されました

jQuery API ドキュメントから:

を使用$.browserして現在のユーザー エージェントを検出し、実行中のブラウザーに基づいてページの表示を変更するのではなく、機能検出を使用することをお勧めします。このプロセスを簡単にするために、jQuery はそのような多くのテストを実行し、 jQuery.supportオブジェクトのプロパティを設定します。

より高度な機能検出については、@Pointy が提案したようにModernizrを使用する必要があります。

于 2013-01-31T16:02:17.487 に答える
2

Modernizr をインポートすると、次のような方法で IE バージョンをテストできます。

if ($('body').is('.lt-ie9 *')) {
  // IE8, 7, 6 ...
}

編集— おっと、修正しました。$(document)動作しません。現時点では理由を思い出せません。

また、Modernizr にはより具体的な機能検出機能が多数あり、必要な検出のみを取得できるように構成可能です。すべてを検出することはできません。レイアウトのバグなどを自動的に検出するのは困難です。

于 2013-01-31T15:59:57.023 に答える