js判斷瀏覽器的環(huán)境(pc端,移動端,還是微信瀏覽器)
今天突然看到一段很好的代碼,分享給大家,順便也給自己留個筆記,js判斷瀏覽器的環(huán)境具體如下:
方法一:
// 判斷瀏覽器函數(shù)
function isMobile(){
if(window.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; // PC端
}
}
方法二:這個方法摘自:im.qq.com
var os = function() {
var ua = navigator.userAgent,
isWindowsPhone = /(?:Windows Phone)/.test(ua),
isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
isAndroid = /(?:Android)/.test(ua),
isFireFox = /(?:Firefox)/.test(ua),
isChrome = /(?:Chrome|CriOS)/.test(ua),
isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),
isPhone = /(?:iPhone)/.test(ua) && !isTablet,
isPc = !isPhone && !isAndroid && !isSymbian;
return {
isTablet: isTablet,
isPhone: isPhone,
isAndroid : isAndroid,
isPc : isPc
};
}();
// 使用方法
if(os.isAndroid || os.isPhone){
alert("-----");
}
判斷是否為微信客戶端:
代碼1
window.isInWeixinApp = function() {
return /MicroMessenger/.test(navigator.userAgent);
};
/**
* 判斷是否是微信環(huán)境
*/
function getIsWxClient () {
var ua = navigator.userAgent.toLowerCase();
if (ua.match(/MicroMessenger/i) == "micromessenger") {
return true;
}
return false;
};
代碼2
var isWechart = function () {
var rst = true
if(window.navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)){
var ua = navigator.userAgent.toLowerCase();
if (!(ua.match(/MicroMessenger/i) == "micromessenger")) {
rst = false;
}
}else {
rst = false;
}
return rst;
}
判斷微信瀏覽器是PC端還是手機(jī)端,以及手機(jī)端是微信瀏覽器還是非微信瀏覽器
//平臺、設(shè)備和操作系統(tǒng)
var system = {
win: false,
mac: false,
xll: false,
ipad: false
};
//檢測平臺
var p = navigator.platform;
system.win = p.indexOf("Win") == 0;
system.mac = p.indexOf("Mac") == 0;
system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);
system.ipad = (navigator.userAgent.match(/iPad/i) != null) ? true : false;
//跳轉(zhuǎn)語句,如果是手機(jī)訪問就自動跳轉(zhuǎn)到wap.baidu.com頁面
if (system.win || system.mac || system.xll || system.ipad) {
alert("在PC端上打開的");
} else {
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
alert("在手機(jī)端微信上打開的");
} else {
alert("在手機(jī)上非微信上打開的");
}
}
js判斷當(dāng)前環(huán)境是否為app環(huán)境
/**
*判斷是否是app環(huán)境
*/
function getIsApp () {
var ua = navigator.userAgent.toLowerCase();
if (ua.match(/isapp/i) == "isapp") {
return true;
}
return false;
};
js--判斷當(dāng)前環(huán)境是否為iphonex環(huán)境
/**
*判斷是否是app環(huán)境
*/
function getIsApp () {
var ua = navigator.userAgent.toLowerCase();
if (ua.match(/isapp/i) == "isapp") {
return true;
}
return false;
};
js移動端頁面判斷是否是iphoneX
function isIPhoneX(fn){
var u = navigator.userAgent;
var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios終端
if (isIOS) {
if (screen.height == 812 && screen.width == 375){
//是iphoneX
}else{
//不是iphoneX
}
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JS實(shí)現(xiàn)可展開折疊層的鼠標(biāo)拖曳效果
這篇文章主要介紹了JS實(shí)現(xiàn)可展開折疊層的鼠標(biāo)拖曳效果,具有展開折疊層及實(shí)時顯示鼠標(biāo)坐標(biāo)位置的功能,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10
javascript內(nèi)置對象Math案例總結(jié)分析
今天總結(jié)一下javascript 內(nèi)置對象Math中的函數(shù)用法,順帶寫一下常見的案例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03
javascript 中null和undefined區(qū)分和比較
這篇文章主要介紹了javascript 中null和undefined區(qū)分和比較的相關(guān)資料,需要的朋友可以參考下2017-04-04

