私のサイトの訪問者がGoogle ChromeではなくChromiumを実行しているかどうかを検出する方法はありますか?たとえ基本的なUAスニッフィング(私が知っていることは悪い習慣である)でも私の特定のケースでは十分ですが、ChromiumとChrome share the same UA stringは正しいですか?私は2つを区別することができる他の方法はありますか?クロムとクロムの具体的な検出方法を教えてください。
5
A
答えて
4
ChromeにはPDFリーダーが内蔵されていますが、Chromiumには含まれていません。
あなたはJavaScriptを使用してこれを検出することができる:
function isChrome() { // Actually, isWithChromePDFReader
for (var i=0; i<navigator.plugins.length; i++)
if (navigator.plugins[i].name == 'Chrome PDF Viewer') return true;
return false;
}
ユーザーがthis answer on Ask Ubuntuを参照してください、彼らのクロムディレクトリにChromeからPDFリーダーバイナリをコピーすることができますので、この方法では、100%信頼できるものではありません。
ChromiumとChromeの間にはほとんど違いはありません(レンダリングやJavaScriptエンジンにはありません)。なぜ違いを見つけたいのですか?ここで
0
はクロムバージョン42以上の作品ポールW.の答えにバリエーションです:プラグインは、ユーザーによって無効にされていない場合はもちろんの
function isChromium() { // Actually, isWithChromiumPDFReader
for (var i=0; i<navigator.plugins.length; i++)
if (navigator.plugins[i].name == 'Chromium PDF Viewer') return true;
return false;
}
これはのみ動作します。
2
新しいChromiumバージョンにはPDFプラグインもあります。
しかし、彼らはまた、クロムのプラグインを持っているので、いずれかのプラグインは「クロム」で始まる場合、それはクロムです:
function isChromium()
{
for (var i = 0, u="Chromium", l =u.length; i < navigator.plugins.length; i++)
{
if (navigator.plugins[i].name != null && navigator.plugins[i].name.substr(0, l) === u)
return true;
}
return false;
}
関連する問題
- 1. PowerBuilder - キーワード検索の方法を教えてください
- 2. Perl 6モジュールの検査方法を教えてください。
- 3. Apple TV Siriリモートボタンの検出方法を教えてください。
- 4. タッチスクリーン検出:クロム17
- 5. クロムを除くクロム
- 6. インタラクティブなポイントフリーの方法を教えてください。
- 7. zf2検証フォーム:依存フィールドの検証方法を教えてください。
- 8. コアデータの移行を単体テストする方法を教えてください。
- 9. Google App Engine Go HTTPハンドラの単体テスト方法を教えてください。
- 10. 私はUITextViewにいるときキーボードがダウンしたときの検出方法を教えてください。
- 11. Installshield - CD全体をinstallshieldでビルドする方法を教えてください。
- 12. は、具体的な方法
- 13. ポイントから消える方法を教えてください。
- 14. クロム「要求されたフォーマットに一致してください」検証メッセージ
- 15. Perl:ファイル名を動的に開く方法を教えてください
- 16. URLバーにクロム拡張アイコンを入れてください
- 17. zf2 validation:従属フィールドの検証方法を教えてください。
- 18. このエラーの解決方法を教えてください。
- 19. カスタムセッションコントローラのサインインチェックインの追加方法を教えてください。
- 20. LinuxでPATH検索を中断する方法を教えてください。
- 21. Android 2.3 Gingerbreadの移植方法を教えてください。
- 22. typeof(dynamic)のテスト方法を教えてください。
- 23. F#Reflectionライブラリの使用方法を教えてください。
- 24. QtWebKitにFlashの表示方法を教えてください。
- 25. jqm.page.params.jsプラグインの使用方法を教えてください。
- 26. ブログのコメント作成方法を教えてください
- 27. Javaプログラムのインストール方法を教えてください。
- 28. VidoeView onStop()アクションの監視方法を教えてください。
- 29. 保存ボタンextjs4のロード方法を教えてください。
- 30. EXC_BAD_ACCESSからの復旧方法を教えてください。
ありがとう!おそらく 'navigator.plugins [i] .name'を意味すると思いますか? ( 's'をシフト:p) –
@AlanSzはい、ありがとうございました。 –
これはChromeのデスクトップ版の場合にのみ当てはまります。 – hexalys