スクリプトで使用したいのですが、思い通りに$.browser
動作しません。たとえば、Chromeではプロパティがsafari
あり、にwebkit
設定されていtrue
ます。
なぜこれが起こるのですか?
これがフィドルです。
スクリプトで使用したいのですが、思い通りに$.browser
動作しません。たとえば、Chromeではプロパティがsafari
あり、にwebkit
設定されていtrue
ます。
なぜこれが起こるのですか?
これがフィドルです。
この場合jQuery 1.7.2
、このリリースでのフィドルの使用が次のようになっているために発生しました。
// Deprecated, use jQuery.browser.webkit instead
if ( jQuery.browser.webkit ) {
jQuery.browser.safari = true;
}
両方のブラウザchrome
とsafari
はWebkitに基づいています。
ソリューション:
次のようなドキュメントからのアドバイスを使用できます。
$.browser.chrome = navigator.userAgent.toLowerCase().indexOf('safari') > -1;
$.browser.safari = ( $.browser.safari && /chrome/.test(navigator.userAgent.toLowerCase()) ) ? false : true;
ここで実際の動作を見ることができます。
おそらく'それはChromeのユーザーエージェントの一部だからです。こちらをご覧ください: http ://www.useragentstring.com/pages/Chrome/
あなたがおそらく必要とするものは、このSO回答で答えられるかもしれません。