2009-07-06 4 views
2

jQuery.browserは最新のjQueryでは廃止されているようです。私はjQuery.supportを使用することを推奨しています。現在のブラウザがFirefoxであるかどうかを確認するために使用するサポートテストはどれですか?JQuery.supportを使用してブラウザがFirefoxかどうかを確認するにはどうすればよいですか?

+0

私はjavascriptの省略記号の解決策を見つけるためにしようとしているので、私はFirefoxのみを検出したかったです。現在、テキストオーバーフロー:省略記号または(Operaの)-oテキストオーバーフロー:省略記号。 Chrome、IE、Operaでのみ正しく表示されます。 –

答えて

6

「サポート」方法のポイントがありません。ユーザーがFirefoxを使用しているかどうかはチェックしません。ブラウザーがあなたがしようとしているDOM操作をサポートしているかどうかをチェックします。これは「機能検出」と呼ばれ、「ブラウザ検出」(あなたがしようとしていること)と比較して優先されます。

など。ブラウザーがCSSをレンダリングできるかどうかを '不透明度'が含まれているかどうか確認したいので、jquery.support.opacityプロパティーを使用します。

なぜ、「機能の検出」をしたいのですか?シンプルで、今後互換性のあるクロスブラウザスクリプトを書くことができます。

「Firefox」をチェックし、DOM/CSSのエフェクトを適用してみましょう。 Firefoxの次のバージョンが、あなたが依存している特定のDOM/CSS機能を壊したらどうなるでしょうか?あなたは元に戻ってスクリプトを更新する必要があります。しかし、あなたが 'フィーチャ検出'を使用した場合、あなたのコードはそのような変更に対して将来証明されます。

ここでは、すべての要件に「機能検出」を使用できるようにするつもりはありませんが、機能検出またはブラウザ検出を使用するかどうかについて考えてみてください。一読の価値より

いくつかのリンク:

http://peter.michaux.ca/articles/feature-detection-state-of-the-art-browser-scripting http://www.nczonline.net/blog/2006/11/16/browser-detection-versus-feature-detection/

+0

私は機能の検出があなたのアプリが将来の証拠になるかどうかは分かりません。もしその機能が存在していて何らかの形でバグがあれば? – Nosredna

+0

さて、100%完璧にはなりません。しかし、機能検出コードは、ブラウザ検出コードに比べて弾力性があります。 – SolutionYogi

+0

おそらく。私はそれが本当であるかどうかを見るのを待っている。私は、特定のリビジョンの前にのみ、Flotチャート作成アプリケーションがOperaの塗りつぶしされたチャートに壊れた1つのケースがありました。それをテストする良い方法はありませんでした。 Operaと改訂版を明示的にテストしなければなりませんでした。私は、多くの人々が機能の検出を受け入れており、それがそれらを保存するという証拠はほとんどないと思います。私は、ブラウザがjQueryで動作する可能性が高いと考えています。jQueryは非常に普及しているため、十分にテストされています。 – Nosredna

関連する問題