js区分webkit,web和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/n/140473.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
XOJUXOJU
上一篇 2024-10-04 00:23
下一篇 2024-10-04 00:23

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • Python中new和init的区别

    new和init都是Python中常用的魔法方法,它们分别负责对象的创建和初始化,本文将从多个角度详细阐述它们的区别。 一、创建对象 new方法是用来创建一个对象的,它是一个类级别…

    编程 2025-04-29
  • Sublime Test与Python的区别

    Sublime Text是一款流行的文本编辑器,而Python是一种广泛使用的编程语言。虽然Sublime Text可以用于编写Python代码,但它们之间有很多不同之处。接下来从…

    编程 2025-04-29
  • Python Web开发第三方库

    本文将介绍Python Web开发中的第三方库,包括但不限于Flask、Django、Bottle等,并讨论它们的优缺点和应用场景。 一、Flask Flask是一款轻量级的Web…

    编程 2025-04-29
  • Shell脚本与Python脚本的区别

    本文将从多个方面对Shell脚本与Python脚本的区别做详细的阐述。 一、语法差异 Shell脚本和Python脚本的语法存在明显差异。 Shell脚本是一种基于字符命令行的语言…

    编程 2025-04-29
  • Python中while语句和for语句的区别

    while语句和for语句是Python中两种常见的循环语句,它们都可以用于重复执行一段代码。然而,它们的语法和适用场景有所不同。本文将从多个方面详细阐述Python中while语…

    编程 2025-04-29
  • Web程序和桌面程序的区别

    Web程序和桌面程序都是进行软件开发的方式,但是它们之间存在很大的区别。本文将从多角度进行阐述。 一、运行方式 Web程序运行于互联网上,用户可以通过使用浏览器来访问它。而桌面程序…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • TensorFlow和Python的区别

    TensorFlow和Python是现如今最受欢迎的机器学习平台和编程语言。虽然两者都处于机器学习领域的主流阵营,但它们有很多区别。本文将从多个方面对TensorFlow和Pyth…

    编程 2025-04-28

发表回复

登录后才能评论