本文目錄一覽:
- 1、JS辨別訪問瀏覽器判斷是android還是ios系統
- 2、如何用 JavaScript 探測當前瀏覽器是否為 WebKit 內核?
- 3、如何用 JavaScript 探測當前瀏覽器是否為 WebKit 內核
- 4、js怎麼判斷360瀏覽器是兼容模式還是極速模式?
- 5、怎麼用js區分chrome和safari?
- 6、webkit.怎樣用js識別出來它是個安卓機
JS辨別訪問瀏覽器判斷是android還是ios系統
1、通過判斷瀏覽器的userAgent,用正則來判斷是否是ios和Android客戶端。代碼如下:
2、檢查是否是移動端(Mobile)、ipad、iphone、微信、QQ等:
使用方法:
檢測瀏覽器語言:
3、判斷iPhone|iPad|iPod|iOS|Android客戶端:
4、判斷pc還是移動端:
如何用 JavaScript 探測當前瀏覽器是否為 WebKit 內核?
script
window.onload=function(){
var body=document.getElementsByTagName(“body”)[0];
if(typeof body.style.WebkitAnimation!=”undefined”)
alert(“當前瀏覽器是Webkit內核!”);
else
alert(“當前瀏覽器不是Webkit內核!”);
}
/script
如何用 JavaScript 探測當前瀏覽器是否為 WebKit 內核
script
var browser = function () {
var agent = navigator.userAgent.toLowerCase(),
opera = window.opera,
browser = {
//檢測當前瀏覽器是否為IE
ie: /(msie\s|trident.*rv:)([\w.]+)/.test(agent),
//檢測當前瀏覽器是否為Opera
opera: (!!opera opera.version),
//檢測當前瀏覽器是否是webkit內核的瀏覽器
webkit: (agent.indexOf(‘ applewebkit/’) -1),
//檢測當前瀏覽器是否是運行在mac平台下
mac: (agent.indexOf(‘macintosh’) -1),
//檢測當前瀏覽器是否處於「怪異模式」下
quirks: (document.compatMode == ‘BackCompat’)
};
//檢測當前瀏覽器內核是否是gecko內核
browser.gecko = (navigator.product == ‘Gecko’ !browser.webkit !browser.opera !browser.ie);
var version = 0;
// Internet Explorer 6.0+
if (browser.ie) {
var v1 = agent.match(/(?:msie\s([\w.]+))/);
var v2 = agent.match(/(?:trident.*rv:([\w.]+))/);
if (v1 v2 v1[1] v2[1]) {
version = Math.max(v1[1] * 1, v2[1] * 1);
} else if (v1 v1[1]) {
version = v1[1] * 1;
} else if (v2 v2[1]) {
version = v2[1] * 1;
} else {
version = 0;
}
//檢測瀏覽器模式是否為 IE11 兼容模式
browser.ie11Compat = document.documentMode == 11;
//檢測瀏覽器模式是否為 IE9 兼容模式
browser.ie9Compat = document.documentMode == 9;
//檢測瀏覽器模式是否為 IE10 兼容模式
browser.ie10Compat = document.documentMode == 10;
//檢測瀏覽器是否是IE8瀏覽器
browser.ie8 = !!document.documentMode;
//檢測瀏覽器模式是否為 IE8 兼容模式
browser.ie8Compat = document.documentMode == 8;
//檢測瀏覽器模式是否為 IE7 兼容模式
browser.ie7Compat = ((version == 7 !document.documentMode) || document.documentMode == 7);
//檢測瀏覽器模式是否為 IE6 模式 或者怪異模式
browser.ie6Compat = (version 7 || browser.quirks);
browser.ie9above = version 8;
browser.ie9below = version 9;
}
// Gecko.
if (browser.gecko) {
var geckoRelease = agent.match(/rv:([\d\.]+)/);
if (geckoRelease) {
geckoRelease = geckoRelease[1].split(‘.’);
version = geckoRelease[0] * 10000 + (geckoRelease[1] || 0) * 100 + (geckoRelease[2] || 0) * 1;
}
}
//檢測當前瀏覽器是否為Chrome, 如果是,則返回Chrome的大版本號
if (/chrome\/(\d+\.\d)/i.test(agent)) {
browser.chrome = +RegExp[‘\x241’];
}
//檢測當前瀏覽器是否為Safari, 如果是,則返回Safari的大版本號
if (/(\d+\.\d)?(?:\.\d)?\s+safari\/?(\d+\.\d+)?/i.test(agent) !/chrome/i.test(agent)) {
browser.safari = +(RegExp[‘\x241’] || RegExp[‘\x242’]);
}
// Opera 9.50+
if (browser.opera)
version = parseFloat(opera.version());
// WebKit 522+ (Safari 3+)
if (browser.webkit)
version = parseFloat(agent.match(/ applewebkit\/(\d+)/)[1]);
//檢測當前瀏覽器版本號
browser.version = version;
return browser;
}();
/script
js怎麼判斷360瀏覽器是兼容模式還是極速模式?
代碼如下:
html
head
titleJS顯示當前瀏覽器詳細信息/title
SCRIPT
function whatBrowser()
document.Browser.Name.value=navigator.appName;
document.Browser.Version.value=navigator.appVersion;
document.Browser.Code.value=navigator.appCodeName;
document.Browser.Agent.value=navigator.userAgent
if (window.navigator.userAgent.indexOf(‘compatible’) != -1)
alert(‘360兼容模式’);
/SCRIPT
TABLE BORDER
/head
body bgcolor=”#fef4d9″ onLoad=”whatBrowser()”
FORM NAME=”Browser”
TR TD 名稱: /TD TD
INPUT TYPE=”txt” NAME=”Name” Size=”150″/TD /TR
TR TD 版本: /TD TD INPUT TYPE=”txt” NAME=”Version” Size=”150″/TD /TR TR TD 內核: /TD
TD INPUT TYPE=”txt” NAME=”Code” Size=”150″/TD
/TR TR TD User-Agent: /TD
TD INPUT TYPE=”txt” NAME=”Agent” Size=”150″/TD
/TR
/FORM
/TABLE
/body
/html
360極速模式採用的是Wekbit內核,兼容模式是IE內核,也即Trident內核。通常所謂的瀏覽器內核也就是瀏覽器所採用的渲染引擎,渲染引擎決定了瀏覽器如何顯示網頁的內容以及頁面的格式信息。
Trident:IE瀏覽器使用的內核,該內核程序在1997年的IE4中首次被採用,是微軟在Mosaic代碼的基礎之上修改而來的,並沿用到目前的IE7。Trident實際上是一款開放的內核,其介面內核設計的相當成熟,因此才有許多採用IE內核而非IE的瀏覽器湧現.
Geckos: Netcape6開始採用的內核,後來的Mozilla FireFox也採用了該內核,Geckos的特點是代碼完全公開,因此,其可開發程度很高,全世界的程序員都可以為其編寫代碼,增加功能。
Presto: 目前Opera採用的內核,該內核在2003年的Opera7中首次被使用,該款引擎的特點就是渲染速度的優化達到了極致,也是目前公認網頁瀏覽速度最快的瀏覽器內核,然而代價是犧牲了網頁的兼容性。
Webkit:Safari瀏覽器使用的內核。Webkit引擎包含WebCore排版引擎及JavaScriptCore解析引擎,均是從KDE的KHTML及KJS引擎衍生而來,它們都是自由軟體,在GPL條約下授權,同時支持BSD系統的開發。
怎麼用js區分chrome和safari?
Safari
Safari典型的userAgent如下:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3
其版本號是Version之後的數字。
Chrome
目前,Chrome的userAgent是:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13
其中,版本號在Chrome之後的數字。
script type=”text/javascript”
var Sys = {};
var ua = navigator.userAgent.toLowerCase();
var s;
(s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
(s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
(s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
(s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
(s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
//以下進行測試
if (Sys.ie) document.write(‘IE: ‘ + Sys.ie);
if (Sys.firefox) document.write(‘Firefox: ‘ + Sys.firefox);
if (Sys.chrome) document.write(‘Chrome: ‘ + Sys.chrome);
if (Sys.opera) document.write(‘Opera: ‘ + Sys.opera);
if (Sys.safari) document.write(‘Safari: ‘ + Sys.safari);
/script
已測試,各瀏覽器非常好用
webkit.怎樣用js識別出來它是個安卓機
用js完全不可靠,你就看看微軟edge這喪心病狂的UA吧
Mozilla/5.0 (Windows Phone 10.0; Android 6.0.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Mobile Safari/537.36 Edge/14.14393
判斷出移動端還是pc端還行,設備?實在太難為js了。所以,老老實實用後台判斷吧。
原創文章,作者:XOJU,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/140473.html