0

嗨,伙计们,我似乎找不到我想要做的确切事情,作为一个 javascript 业余爱好者,我似乎无法解决它。基本上......我有这个脚本附加到我的页面上的各种元素

$(document).ready(function() {
$("h1, h2, h5, .class1, .class2 #image1").click(function () {
    window.open('https://www.linkdesktop.com');
});

});

我想做的是:如果在移动设备上,则将 www.linkdesktop.com 切换到 www.linkmobile.com

这可能吗,我是根据屏幕尺寸还是使用某种移动检测脚本来做?

答案赞赏,非常感谢。


好的,谢谢你的回答

所以也许是这样的?

    var userAgent = window.navigator.userAgent;

$(document).ready(function() {
if( (Android|webOS|iPhone|iPad|iPod|BlackBerry).test(navigator.userAgent) ) {

$("h1, h2, h5, .class1, .class2 #image1").click(function () {
    window.open('https://www.linkmobile.com');
});

}
else {

$("h1, h2, h5, .class1, .class2 #image1").click(function () {
    window.open('https://www.linkdesktop.com');
});

}

});
4

2 回答 2

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);
  },
  any: function() {
    return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
  }
};

if( isMobile.any() ) alert('Mobile');
于 2013-05-10T13:28:20.363 回答
0

您可以检查用户代理 (window.navigator.userAgent),请参阅确定用户是否从移动 Safari 导航

于 2013-05-10T12:56:11.473 回答