js判斷瀏覽器的環(huán)境(pc端,移動(dòng)端,還是微信瀏覽器)
今天突然看到一段很好的代碼,分享給大家,順便也給自己留個(gè)筆記,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; // 移動(dòng)端
}else{
return false; // PC端
}
}
方法二:這個(gè)方法摘自: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ī)端是微信瀏覽器還是非微信瀏覽器
//平臺(tái)、設(shè)備和操作系統(tǒng)
var system = {
win: false,
mac: false,
xll: false,
ipad: false
};
//檢測(cè)平臺(tái)
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)語(yǔ)句,如果是手機(jī)訪問(wèn)就自動(dòng)跳轉(zhuǎn)到wap.baidu.com頁(yè)面
if (system.win || system.mac || system.xll || system.ipad) {
alert("在PC端上打開(kāi)的");
} else {
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
alert("在手機(jī)端微信上打開(kāi)的");
} else {
alert("在手機(jī)上非微信上打開(kāi)的");
}
}
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移動(dòng)端頁(yè)面判斷是否是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
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
可以測(cè)試javascript運(yùn)行效果的代碼
這篇文章主要介紹了如何在頁(yè)面中可以簡(jiǎn)單的測(cè)試一些簡(jiǎn)單的JavaScript語(yǔ)句,需要的朋友可以參考下2010-04-04
JS實(shí)現(xiàn)可展開(kāi)折疊層的鼠標(biāo)拖曳效果
這篇文章主要介紹了JS實(shí)現(xiàn)可展開(kāi)折疊層的鼠標(biāo)拖曳效果,具有展開(kāi)折疊層及實(shí)時(shí)顯示鼠標(biāo)坐標(biāo)位置的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10
微信小程序?qū)崿F(xiàn)簡(jiǎn)易的計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)簡(jiǎn)易的計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09
微信小程序使用audio組件播放音樂(lè)功能示例【附源碼下載】
這篇文章主要介紹了微信小程序使用audio組件播放音樂(lè)功能,結(jié)合實(shí)例形式分析了微信小程序audio組件播放在線音樂(lè)相關(guān)操作技巧,并附帶源碼供讀者下載參考,需要的朋友可以參考下2017-12-12
javascript內(nèi)置對(duì)象Math案例總結(jié)分析
今天總結(jié)一下javascript 內(nèi)置對(duì)象Math中的函數(shù)用法,順帶寫一下常見(jiàn)的案例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03
js 毫秒轉(zhuǎn)天時(shí)分秒的實(shí)例
下面小編就為大家分享一篇js 毫秒轉(zhuǎn)天時(shí)分秒的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-11-11
JS使用new操作符創(chuàng)建對(duì)象的方法分析
這篇文章主要介紹了JS使用new操作符創(chuàng)建對(duì)象的方法,結(jié)合實(shí)例形式分析了javascript面向?qū)ο蟪绦蛟O(shè)計(jì)類的定義、new操作符對(duì)象的創(chuàng)建及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-05-05
javascript 中null和undefined區(qū)分和比較
這篇文章主要介紹了javascript 中null和undefined區(qū)分和比較的相關(guān)資料,需要的朋友可以參考下2017-04-04

