JavaScript判断设备类型的实现
WEB前端开发社区
2021-10-27
实现思路
js判断移动端还是pc端
function fIsMobile(){ return /Android|iPhone|iPad|iPod|BlackBerry|webOS|Windows Phone|SymbianOS|IEMobile|Opera Mini/i.test(navigator.userAgent);}
或者:
function iswap() { var uA = navigator.userAgent.toLowerCase(); var ipad = uA.match(/ipad/i) == "ipad"; var iphone = uA.match(/iphone os/i) == "iphone os"; var midp = uA.match(/midp/i) == "midp"; var uc7 = uA.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; var uc = uA.match(/ucweb/i) == "ucweb"; var android = uA.match(/android/i) == "android"; var windowsce = uA.match(/windows ce/i) == "windows ce"; var windowsmd = uA.match(/windows mobile/i) == "windows mobile"; if (!(ipad || iphone || midp || uc7 || uc || android || windowsce || windowsmd)) { // PC 端 }else{ // 移动端 }}
浏览器宽度区分
我们可以利用js代码,来判断访问者设备屏幕的宽度的大小来确定访客的设备是否为移动设备。
window.screen.availWidth:用来获取浏览器屏幕的宽度。
window.screen.availHeight:用来获取浏览器屏幕的高度。
<script>if(window.screen.availWidth<768){ //移动端}else{ //PC端}</script>
js判断是否ios或Android
var u = navigator.userAgent;var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
区分Android、iphone、ipad:
ar ua = navigator.userAgent.toLowerCase();if (/android|adr/gi.test(ua)) { // 安卓 } else if (/\(i[^;]+;( U;)? CPU.+Mac OS X/gi.test(ua)) { //苹果 } else if (/iPad/gi.test(ua)) { //ipad }
js区分判断访客的浏览器
var ua = navigator.userAgent.toLowerCase();if (/msie/i.test(ua) && !/opera/.test(ua)) { alert("IE"); return;} else if (/firefox/i.test(ua)) { alert("Firefox"); return;} else if (/chrome/i.test(ua) && /webkit/i.test(ua) && /mozilla/i.test(ua)) { alert("Chrome"); return;} else if (/opera/i.test(ua)) { alert("Opera"); return;} else if (/iPad/i) { alert("ipad"); return;}if (/webkit/i.test(ua) && !(/chrome/i.test(ua) && /webkit/i.test(ua) && /mozilla/i.test(ua))) { alert("Safari"); return;} else { alert("unKnow"); }
赞 (0)