問題タブ [browser-detection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
12 に答える
7261 参照

browser - ブラウザ検出

ユーザーのブラウザを検出するための最良/最も簡単/最も正確な方法は何ですか?

拡張性と実装の容易さはプラスです。

使用するテクノロジーが少ないほど良い。

ソリューションは、サーバー側、クライアント側、またはその両方にすることができます。ただし、結果は最終的にサーバーに届くはずです。

ソリューションは、フレームワークに依存しない場合があります。

このソリューションは、レポート目的でのみ使用されます。

0 投票する
6 に答える
26624 参照

javascript - プロトタイプ ライブラリのブラウザとバージョンは?

私はアトラスの使用に慣れています。最近、jQuery に移行し始め、時にはプロトタイプを作成しています。私が現在取り組んでいるプロジェクトは、プロトタイプを使用しています。

Prototype で、ブラウザの名前とバージョンを取得する簡単な方法はありますか? API ドキュメントを調べましたが、見つからないようです。

0 投票する
15 に答える
4455 参照

css - どちらが優れていますか: CSS ハッキングとブラウザー検出?

一般的に、インターネットを見回すと、CSS ハックを使用して、Web サイトがすべてのブラウザーで同じように見えるようにしていることがわかります。個人的には、これらのハッキングをすべて見つけてテストするには、かなりの時間がかかることがわかりました。変更を加えるたびに、4 つ以上のブラウザーでテストして、他に問題がないことを確認する必要があります。

約 1 年前、他の主要なサイト (Yahoo、Google、BBC など) が使用しているものをインターネットで調べたところ、それらのほとんどがなんらかの形式のブラウザー検出 (JS、HTML if ステートメント、サーバー ベース) を行っていることがわかりました。私もこれをやり始めました。最近取り組んだほとんどすべてのサイトで jQuery を使用しているため、組み込みのブラウザー検出機能を使用しています。

これらのいずれかを使用する、または使用しない理由はありますか?

0 投票する
16 に答える
51189 参照

jquery - $.browser.msie が廃止された jQuery 1.3 でブラウザ検出を行う方法は?

jQuery 1.3 が非推奨になった (将来のバージョンでは削除されると思います) などの状況で、ブラウザーの検出をどのように行うべき$.browser.msieでしょうか?

私はこれを、次のようなほぼすべてのブラウザーの CSS 修正のためにどのブラウザーを使用しているかを判断するためによく使用しました。

...まあ、それですべてだと思います:)

私が使用している場所では1 px、ブラウザーの違いを修正しようとしているだけなので、どのブラウザーの問題が問題を引き起こしているのかわかりません。

編集:新しい jQuery 機能では、IE6 と IE7 のどちらを使用しているかを判断する方法がありません。これを今どのように判断すべきですか?

0 投票する
3 に答える
6826 参照

css - CSS のブラウザー検出: 別の CSS ファイルを使用するか、インライン CSS を使用しますか?

どちらが速度に最適か疑問に思っています:

オプション 1: ブラウザーごとに個別の CSS をロードする ( を介して含まれる個別の JS ファイル<script/>):

オプション 2: インライン CSS ( を介して含まれる個別の JS ファイル<script/>):

オプション 3: または、別のより良い方法はありますか?

0 投票する
8 に答える
62726 参照

jquery - jQuery.support を使用した IE6 の検出

jquery.support を使用して IE6 (および IE7 ではない) に固有のものをテストする方法について誰かアイデアがありますか?

私の問題は、IE6 がアンカー要素に対してのみ :hover 疑似クラスをサポートし、IE7 がすべての要素 (FF、Chrome など) に対してサポートしていることです。したがって、ブラウザがすべての要素に対して :hover をサポートしていない場合に備えて、何か特別なことをしたいと考えています...したがって、この機能をテストする方法が必要です。(jQuery.browser を使用したくない)。何か案は?

0 投票する
8 に答える
8808 参照

javascript - Javascript でブラウザ検出を行う最良の方法は何ですか?

私の Web 開発クラスの 1 つで、NE4、NE6+、IE4、IE6+ ブラウザを検出し、各ブラウザに対応する CSS スクリプトを表示するスクリプトを作成するように依頼されました。

彼は私たちにこれらについて読むための記事をくれました。記事は このサイトに言及しています

生徒の一人がこう言いました

JavaScript の互換性を確保するための最良の選択は、何かをしたいときにブラウザーの機能をテストすることです。これの主な理由の 1 つは、今後ますます多くのブラウザーが作成されることです。

ここで私の質問は、ユーザーのブラウザー オブジェクトの検出またはナビゲーター オブジェクトの使用を検出するための最良の方法はどれですか?

0 投票する
5 に答える
4274 参照

javascript - display:inline-block のブラウザー サポートを検出する

ブラウザが CSS 属性 display:inline-block をサポートしているかどうかをどのように検出できますか?

0 投票する
9 に答える
20041 参照

javascript - What is the correct way to detect Opera using jQuery?

Amazon.com recently updated their javascript, and it's causing problems with some Opera browsers.

Their browser detection code looks like so, but it's faulty:

Nothing obviously wrong jumps out at me with this code, but I've never used jQuery before so I don't know.

Even though this code looks like it's attempting to let Opera users through, when I visit the page with Opera 9.64 I get an "unsupported browser" message. If I change Opera's settings to report itself as Firefox, the page works perfectly! With that in mind, I'm pretty sure it's a problem with the script and not the browser.

Any jQuery experts have a suggestion?

You can replicate the behavior by visiting any book on Amazon and clicking the "look inside this book" link.

0 投票する
8 に答える
36188 参照

javascript - ブラウザーでの VML または SVG のサポートをどのように検出しますか?

私は少しの JavaScript を書いていて、SVG か VML のどちらかを選択する必要があります (またはその両方か、それ以外の何か、それは奇妙な世界です)。今のところ IE だけが VML をサポートしていることはわかっていますが、プラットフォームよりも機能を検出したいと考えています。

SVG には、使用できるプロパティがいくつかあるようです。たとえば、window.SVGAngle です。

これは SVG サポートを確認する最良の方法ですか?

VML に相当するものはありますか?

残念ながら、firefox では、VML ですべてのレンダリングをエラーなく実行できます。画面上では何も起こりません。スクリプトからその状況を検出するのは非常に困難です。