这是我根据屏幕尺寸检测移动显示的代码段。您可以通过向URL添加forceDesktop参数来强制网站保持桌面模式。
我是jquery的新手,所以如果你有建议,请发表评论。
积分转到brandonjp: How can I get query string values in JavaScript?
<script>
$.urlParam = function(name, url) {
if (!url) {
url = window.location.href;
}
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(url);
if (!results) {
return undefined;
}
return results[1] || undefined;
}
window.onload = function() {
var forceDesktop = $.urlParam('forceDesktop');
if (!forceDesktop) {
if ( $(window).width() < 639) {
var url = "http://m.mysite.com/";
$(location).attr('href',url);
}
}
};
</script>
答案 0 :(得分:3)
如果您要使用某种形式的浏览器嗅探而非通过类似Modernizr之类的功能检测,最好的办法是从http://detectmobilebrowsers.com/获取一些脚本,而不是使用主页 - 在这里和那里粘贴成长/不完整的脚本。
答案 1 :(得分:2)
最好的方法是
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )
{
var url = "http://m.mysite.com/";
$(location).attr('href',url);
}
了解更多Here
答案 2 :(得分:2)
实际上,我认为从窗口宽度检测移动设备非常重要。
所以这就是我使用的方式。
function detectmob() {
if(window.innerWidth <= 800 || window.innerHeight <= 600) {
return true;
} else {
return false;
}
}
if (detectmob()){
top.location.href="mobile";
}
答案 3 :(得分:2)
为什么不呢?
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
window.location = "http://m.mysite.tld/";
}