0

我有一个脚本来检测用户是否使用移动设备:

<script type="text/javascript">
//<![CDATA[ 
var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if (mobile) ||  (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) {
    window.location.href = 'http://www.site.com/mobile/';
}
//]]>
</script>

但是我明白了,||有什么问题?

Uncaught SyntaxError: Unexpected token || 
4

2 回答 2

2

您正在测试的布尔表达式必须用括号括起来。

if ((mobile) ||  (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)))
于 2013-04-30T19:18:39.677 回答
1

所有的表达式都需要用括号括起来。

<script type="text/javascript">
//<![CDATA[ 
var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if ((mobile) ||  (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) {
    window.location.href = 'http://www.site.com/mobile/';
}
//]]>
</script>
于 2013-04-30T19:18:41.667 回答