HI朋友我必须在手机上打开时禁用脚本以实现视差效果。 我发现了一个类似于我想要和改编的脚本,但它不起作用。谁知道什么是错的?
var isMobile = {
Android: function() {
return navigator.userAgent.match(/Android/i);
},
BlackBerry: function() {
return navigator.userAgent.match(/BlackBerry/i);
},
iOS: function() {
return navigator.userAgent.match(/iPhone|iPad|iPod/i);
},
Opera: function() {
return navigator.userAgent.match(/Opera Mini/i);
},
Windows: function() {
return navigator.userAgent.match(/IEMobile/i);
},
any: function() {
return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
}
};
jQuery(document).ready(function(){
if( !isMobile.any()){
$(window).stellar(): false;
}
});
答案 0 :(得分:2)
: false
之后的$(window).stellar()
是什么?我不确定你在那里做什么,或者它只是某种复制/粘贴错误或其他什么,但这会给:
SyntaxError: Unexpected token :
我想你想要这个:
jQuery(document).ready(function(){
if( !isMobile.any()){
$(window).stellar();
}
});
答案 1 :(得分:1)
jQuery(document).ready(function(){
if( !isMobile.any()){
$(window).stellar(): false;
}
});
第三行语法错误。您到底想要实现的是什么?fn(): false;
?
我相信你在寻找:
jQuery(document).ready(function(){
if( !isMobile.any() ){
$(window).stellar();
}
});
换句话说:只有!isMobile.any()
应该执行$(window).stellar()
。在另一种情况下(isMobile.any()
为true
),不应执行if
块。
答案 2 :(得分:0)
在浏览器中打开控制台。
转到这个小提琴:http://jsfiddle.net/vyPjx/
您将看到错误
Uncaught SyntaxError: Unexpected token :
错误将指向
行$(window).stellar(): false;
看起来你试图使用三元运算符,但你不是吗?
应该只是
$(window).stellar();
如果你要去三元路线那就是
jQuery(document).ready(function(){
var hasRun = !isMobile.any() ? $(window).stellar() : false;
});
答案 3 :(得分:-1)
试试这个,
var isMobile = {
Android: function() {
return navigator.userAgent.match(/Android/i);
},
BlackBerry: function() {
return navigator.userAgent.match(/BlackBerry/i);
},
iOS: function() {
return navigator.userAgent.match(/iPhone|iPad|iPod/i);
},
Opera: function() {
return navigator.userAgent.match(/Opera Mini/i);
},
Windows: function() {
return navigator.userAgent.match(/IEMobile/i);
}
};
var any=(isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
jQuery(document).ready(function(){
if(!any){
alert('No mobiles');
$(window).stellar();
}
});