在开发网站的时候,经常遇到这样的需求:用户输入或点击了一个网址,如果用户用的设备是手机、pad就去访问A网址,如果用的pc浏览器就去访问B网址,即根据不同设备访问不同页面。这个问题如果放到前端来做的话,需要在html文件的head标签最开始加上下面的js代码。如果放到后台来做的话也可以根据User-Agent来判断和控制。
function isMobile() {
if((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)))
return true;
else
return false;
}
var urlMobile='/stock/index.html';//手机pad跳转的页面,这个需要开发者自己配置
if(isMobile() !== false)
window.location.href=urlMobile;
原理就是根据navigator.userAgent获取用户的浏览器信息,然后用正则匹配判断当前用户的设备是否是手机和pad,如果是的话跳转到另一个页面。
完整的html文件如下: