这个问题很简单,但无论如何我想问它。
此代码告诉我们用户的浏览器是着名的 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
整数。
答案 0 :(得分:3)
您只需将其更改为
即可if (navigator.userAgent.indexOf('Opera Mini') == -1)
如果在用户代理字符串
中找不到'Opera Mini',则返回true答案 1 :(得分:3)
来自Opera doc:
检测Opera Mini : 2种方法:您可以:
检查用户代理字符串
- 醇>
检查是否存在operamini对象
即。如果不是Opera Mini:
if (!window.operamini){}
简短,轻松,可靠。与可欺骗的用户代理不同。
答案 2 :(得分:0)
使用~
运算符的其他选项(可能不太可读):
if (~navigator.userAgent.indexOf('Opera Mini')) {
// opera mini
}
if (!~navigator.userAgent.indexOf('Opera Mini')) {
// not opera mini
}
然而,在您熟悉语法之前,最好与-1
进行比较。
答案 3 :(得分:0)
https://dev.opera.com/articles/opera-mini-and-javascript/
var isOperaMini = Object.prototype.toString.call(window.operamini) === "[object OperaMini]"