JavaScript判断设备类型的实现
web前端开发
共 2448字,需浏览 5分钟
·
2021-10-26 10:40
实现思路
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");
}
学习更多技能
请点击下方公众号
评论
node-nanomsgnanomsg 的 JavaScript 实现
node-nanomsg 是 nanomsg 的 JavaScript 语言实现版本。安装方法:np
node-nanomsgnanomsg 的 JavaScript 实现
0
Cucumber.jsCucumber 的 JavaScript 实现
Cucumber.js 是 Cucumber 的纯 JavaScript 实现。要求Node.js
Cucumber.jsCucumber 的 JavaScript 实现
0
ReqliteRethinkDB 的 JavaScript 实现
Reqlite是ReQL服务器的JavaScript实现方式。也就是说你可以使用RethinkDB的驱动程序来连接Reqlite服务器。优势:为节点开发人员提供了一个简单的方法来测试代码,且不需要启动
ReqliteRethinkDB 的 JavaScript 实现
0
node-nanomsgnanomsg 的 JavaScript 实现
node-nanomsg是 nanomsg的JavaScript语言实现版本。安装方法:npminstallnanomsg示例代码:varnanomsg=require('nanomsg');vara
node-nanomsgnanomsg 的 JavaScript 实现
0
promisejsPromises 的 JavaScript 实现
promise.js 是 Promises 的轻量级 JavaScript 实现。Promises
promisejsPromises 的 JavaScript 实现
0
ReqliteRethinkDB 的 JavaScript 实现
Reqlite 是 ReQL 服务器的 JavaScript 实现方式。也就是说你可以使用 Reth
ReqliteRethinkDB 的 JavaScript 实现
0
promisejsPromises 的 JavaScript 实现
promise.js是Promises的轻量级JavaScript实现。Promises提供了callback-passing的替代方案,异步函数返回一个Promise对象可附加到callbacks中
promisejsPromises 的 JavaScript 实现
0