html 浏览器检测脚本来自http://www.quirksmode.org/js/detect.html

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html 浏览器检测脚本来自http://www.quirksmode.org/js/detect.html相关的知识,希望对你有一定的参考价值。

var BrowserDetect = {
    init: function () {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function (data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            } else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function (dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [{
        string: navigator.userAgent,
        subString: "OPR",
        identity: "Opera",
        versionSearch: "OPR"
    }, {
        string: navigator.userAgent,
        subString: "Vivaldi",
        identity: "Vivaldi"
    }, {
        string: navigator.userAgent,
        subString: "Chrome",
        identity: "Chrome"
    }, {
        string: navigator.userAgent,
        subString: "OmniWeb",
        versionSearch: "OmniWeb/",
        identity: "OmniWeb"
    }, {
        string: navigator.vendor,
        subString: "Apple",
        identity: "Safari",
        versionSearch: "Version"
    }, { // old Opera
        prop: window.opera,
        identity: "Opera",
        versionSearch: "Version"
    }, {
        string: navigator.vendor,
        subString: "iCab",
        identity: "iCab"
    }, {
        string: navigator.vendor,
        subString: "KDE",
        identity: "Konqueror"
    }, {
        string: navigator.userAgent,
        subString: "Firefox",
        identity: "Firefox"
    }, {
        string: navigator.vendor,
        subString: "Camino",
        identity: "Camino"
    }, { // for newer Netscapes (6+)
        string: navigator.userAgent,
        subString: "Netscape",
        identity: "Netscape"
    }, {
        string: navigator.userAgent,
        subString: "MSIE",
        identity: "Internet Explorer",
        versionSearch: "MSIE"
    }, {
        string: navigator.userAgent,
        subString: ".NET4",
        identity: "Microsoft Edge",
        versionSearch: "rv"
    }, {
        string: navigator.userAgent,
        subString: "Gecko",
        identity: "Mozilla",
        versionSearch: "rv"
    }, { // for older Netscapes (4-)
        string: navigator.userAgent,
        subString: "Mozilla",
        identity: "Netscape",
        versionSearch: "Mozilla"
    }],
    dataOS: [{
        string: navigator.userAgent,
        subString: "Windows Phone",
        identity: "Windows Phone"
    }, {
        string: navigator.platform,
        subString: "Win",
        identity: "Windows"
    }, {
        string: navigator.platform,
        subString: "Mac",
        identity: "Mac"
    }, {
        string: navigator.userAgent,
        subString: "iPhone",
        identity: "iPhone/iPod"
    }, {
        string: navigator.userAgent,
        subString: "Android",
        identity: "Android"
    }, {
        string: navigator.platform,
        subString: "Linux",
        identity: "Linux"
    }]

};
BrowserDetect.init();
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Which Browser?</title>
</head>
<body>
    <p>You are using <span id="browser"></span> <span id="version"></span> on <span id="os"></span></p>
    <script type="text/javascript" src="browserdetect.js"></script>
    <script type="text/javascript">
        document.getElementById("os").innerText = BrowserDetect.OS;
        document.getElementById("browser").innerText = BrowserDetect.browser;
        document.getElementById("version").innerText = BrowserDetect.version;
    </script>
</body>
</html>

以上是关于html 浏览器检测脚本来自http://www.quirksmode.org/js/detect.html的主要内容,如果未能解决你的问题,请参考以下文章

html 浏览器检测脚本来自http://www.quirksmode.org/js/detect.html

sh 监控并重新启动Varnish - 来自http://www.cyberciti.biz/tips/howto-linux-unix-write-to-syslog.html的脚本

python批量检测注入点脚本

URL重定向漏洞,python打造URL重定向漏洞检测脚本

JSONP跨域

JavaScript用户代理字符串检测脚本