2

この質問は非常に単純ですが、とにかく聞きたいです。

このコードは、ユーザーのブラウザが有名なOpera Miniであることを示しています。

var isOperaMini = (navigator.userAgent.indexOf('Opera Mini') > -1);

したがって、次のように使用できます。

if (navigator.userAgent.indexOf('Opera Mini') > -1)
    alert('hey! your browser is buggy');

これはif Opera Mini, then条件付きです。

の正しい短い条件を作成するにはどうすればよいif not Opera mini, thenですか?

-1整数をどのように扱うべきかわかりません。

4

4 に答える 4

3

オペラのドキュメントから:

Opera Mini の検出: 2 つのアプローチ: 次のことができます。

  1. ユーザー エージェント文字列を調べる

  2. オペラミニ オブジェクトの存在を確認する

つまり、Opera Mini でない場合:

if (!window.operamini){}

短く、簡単で、信頼性があります。なりすまし可能なユーザーエージェントとは異なります。

于 2015-06-03T21:00:51.250 に答える
3

単に次のように変更できます

if (navigator.userAgent.indexOf('Opera Mini') == -1)

ユーザー エージェント文字列に「Opera Mini」が見つからない場合、true が返されます。

于 2013-02-23T20:54:34.777 に答える
0

~演算子を使用した別のオプション(おそらく読みにくい) :

if (~navigator.userAgent.indexOf('Opera Mini')) {
    // opera mini
}

if (!~navigator.userAgent.indexOf('Opera Mini')) {
    // not opera mini
}

-1ただし、構文に慣れるまでは、と比較することをお勧めします。

于 2013-02-23T21:00:20.880 に答える