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);
        }
        document.write(''
 + 'Browser
name  = ' + browserName + '<br>'
 + 'Full
version  = ' + fullVersion + '<br>'
 + 'Major version =
' + majorVersion + '<br>'
 + 'navigator.appName
= ' + navigator.appName + '<br>'
 + 'navigator.userAgent
= ' + navigator.userAgent + '<br>'
)
 
