使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
WEB开发中如何通过Javascript来判断终端为PC、IOS(iphone)、Android呢?
可以通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端。
varu=navigator.userAgent; isAndroid=u.indexOf('Android')>-1||u.indexOf('Adr')>-1,//android终端 isiOS=!!u.match(/\(i[^;]+;(U;)?CPU.+MacOSX/);//ios终端
下面一个比较全面的浏览器检查函数,提供更多的检查内容,你可以检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等。
<scripttype="text/javascript"> //判断访问终端 varbrowser={ versions:function(){ varu=navigator.userAgent,app=navigator.appVersion; return{ trident:u.indexOf('Trident')>-1,//IE内核 presto:u.indexOf('Presto')>-1,//opera内核 webKit:u.indexOf('AppleWebKit')>-1,//苹果、谷歌内核 gecko:u.indexOf('Gecko')>-1&&u.indexOf('KHTML')==-1,//火狐内核 mobile:!!u.match(/AppleWebKit.*Mobile.*/),//是否为移动终端 ios:!!u.match(/\(i[^;]+;(U;)?CPU.+MacOSX/),//ios终端 android:u.indexOf('Android')>-1||u.indexOf('Adr')>-1,//android终端 iPhone:u.indexOf('iPhone')>-1,//是否为iPhone或者QQHD浏览器 iPad:u.indexOf('iPad')>-1,//是否iPad webApp:u.indexOf('Safari')==-1,//是否web应该程序,没有头部与底部 weixin:u.indexOf('MicroMessenger')>-1,//是否微信(2015-01-22新增) qq:u.match(/\sQQ/i)=="qq"//是否QQ }; }(), language:(navigator.browserLanguage||navigator.language).toLowerCase() } </script>
使用方法:
//判断是否IE内核 if(browser.versions.trident){alert("isIE");} //判断是否webKit内核 if(browser.versions.webKit){alert("iswebKit");} //判断是否移动端 if(browser.versions.mobile||browser.versions.android||browser.versions.ios){alert("移动端");} 检测浏览器语言 currentLang=navigator.language;//判断除IE外其他浏览器使用语言 if(!currentLang){//判断IE浏览器使用语言 currentLang=navigator.browserLanguage; } alert(currentLang);
上面只是平时用的最多的一种方法,其实还有第二种方法:
if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)){ //alert(navigator.userAgent); window.location.href="iPhone.html"; }elseif(/(Android)/i.test(navigator.userAgent)){ //alert(navigator.userAgent); window.location.href="Android.html"; }else{ window.location.href="pc.html"; };
不同的终端设备采用不同的响应策略,具体场景灵活运用把哈哈。
以上所述是小编给大家介绍的使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!