Nhận diện hệ điều hành, trình duyệt và version với Navigator

Nếu bạn muốn ghi nhận lại thông tin từ người dùng bao gồm:
    • Hệ điều hành đang sử dụng là gì?
    • Trình duyệt đang sử dụng tên gì? 
    • Trình duyệt đang dùng có version bao nhiêu?
    • Platform gì?
Thì bạn phải làm cách nào? Mời bạn xem những liệt kê sau đây:

Để có thể hiển thị được thông tin về hệ điều hành thì bạn có thể dùng đoạn script như sau:
<script>
    var OSName="Unknown OS";
    if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
    if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
    if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
    if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";
</script>
Còn nếu các bạn muốn hiển thị thông tin về trình duyệt, version của trình duyệt, nền tảng, ... thì các bạn có thể dùng đoạn script sau:
<script>
    var nVer = navigator.appVersion;
    var nAgt = navigator.userAgent;
    var browserName  = navigator.appName;
    var fullVersion  = ''+parseFloat(navigator.appVersion);
    var majorVersion = parseInt(navigator.appVersion,10);
    var nameOffset,verOffset,ix;
    // In Opera, the true version is after "Opera" or after "Version"
    if ((verOffset=nAgt.indexOf("Opera"))!=-1) {
        browserName = "Opera";
        fullVersion = nAgt.substring(verOffset+6);
        if ((verOffset=nAgt.indexOf("Version"))!=-1
            fullVersion = nAgt.substring(verOffset+8);
    }
    // In MSIE, the true version is after "MSIE" in userAgent
    else if ((verOffset=nAgt.indexOf("MSIE"))!=-1) {
        browserName = "Microsoft Internet Explorer";
        fullVersion = nAgt.substring(verOffset+5);
    }
    // In Chrome, the true version is after "Chrome"
    else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) {
        browserName = "Chrome";
        fullVersion = nAgt.substring(verOffset+7);
    }
    // In Safari, the true version is after "Safari" or after "Version"
    else if ((verOffset=nAgt.indexOf("Safari"))!=-1) {
        browserName = "Safari";
        fullVersion = nAgt.substring(verOffset+7)
        if ((verOffset=nAgt.indexOf("Version"))!=-1)
            fullVersion = nAgt.substring(verOffset+8);
    }
    // In Firefox, the true version is after "Firefox"
    else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) {
        browserName = "Firefox";
        fullVersion = nAgt.substring(verOffset+8);
    }
    // In most other browsers, "name/version" is at the end of userAgent
    else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) <
                    (verOffset=nAgt.lastIndexOf('/')) )
    {
        browserName = nAgt.substring(nameOffset,verOffset);
        fullVersion = nAgt.substring(verOffset+1);
        if (browserName.toLowerCase()==browserName.toUpperCase()) {
            browserName = navigator.appName;
        }
    }
    // trim the fullVersion string at semicolon/space if present
    if ((ix=fullVersion.indexOf(";"))!=-1)
        fullVersion=fullVersion.substring(0,ix);
    if ((ix=fullVersion.indexOf(" "))!=-1)
        fullVersion=fullVersion.substring(0,ix);

    majorVersion = parseInt(''+fullVersion,10);
    if (isNaN(majorVersion)) {
        fullVersion  = ''+parseFloat(navigator.appVersion);
        majorVersion = parseInt(navigator.appVersion,10);
    }
</script>
Và cuối cùng là đoạn code hiển thị các thông tin cần thiết:
<script>
    var txt =""; 
    txt += "- Operation System: " + OSName + "\n";
    txt += "- Browser CodeName: " + navigator.appCodeName + "\n";
    txt += "- Browser Name: " + navigator.appName + "\n";
    txt += "- Browser Version: " + navigator.appVersion + "\n";
    txt += "- Cookies Enabled: " + navigator.cookieEnabled + "\n";
    txt += "- Platform: " + navigator.platform + "\n";
    txt += "- User-agent header: " + navigator.userAgent + "\n";
    document.getElementById("example").innerHTML=txt;
</script>

Post a Comment

Previous Post Next Post

Comments