Để phát hiện thông tin trình duyệt người dùng, chúng ta sử dụng thuộc tính navigator.userAgent. Để xác định tên thực sự của trình duyệt Web của người dùng, bạn có thể sử dụng các thuộc tính navigator.appName và navigator.userAgent.
javascript lấy tên trình duyệt
lấy loại trình duyệt
function detectBrowser() {
if((navigator.userAgent.indexOf("Opera") || navigator.userAgent.indexOf('OPR')) != -1 ) {
return 'Opera';
} else if(navigator.userAgent.indexOf("Chrome") != -1 ) {
return 'Chrome';
} else if(navigator.userAgent.indexOf("Safari") != -1) {
return 'Safari';
} else if(navigator.userAgent.indexOf("Firefox") != -1 ){
return 'Firefox';
} else if((navigator.userAgent.indexOf("MSIE") != -1 ) || (!!document.documentMode == true )) {
return 'IE';//crap
} else {
return 'Unknown';
}
}
javascript lấy tên trình duyệt
var nVer = navigator.appVersion;
var navigtr = navigator.userAgent;
var userBrowserNm = navigator.appName;
var getFlDesc = ''+parseFloat(navigator.appVersion);
var userMejorVer = parseInt(navigator.appVersion,10);
var nameOffset,vrOfSet,ix;
// In Opera 15+, the true version is after "OPR/"
if ((vrOfSet=navigtr.indexOf("OPR/"))!=-1) {
userBrowserNm = "Opera";
getFlDesc = navigtr.substring(vrOfSet+4);
}
// In older Opera, the true version is after "Opera" or after "Version"
else if ((vrOfSet=navigtr.indexOf("Opera"))!=-1) {
userBrowserNm = "Opera";
getFlDesc = navigtr.substring(vrOfSet+6);
if ((vrOfSet=navigtr.indexOf("Version"))!=-1)
getFlDesc = navigtr.substring(vrOfSet+8);
}
// In MSIE, the true version is after "MSIE" in userAgent
else if ((vrOfSet=navigtr.indexOf("MSIE"))!=-1) {
userBrowserNm = "Microsoft Internet Explorer";
getFlDesc = navigtr.substring(vrOfSet+5);
}
// In Chrome, the true version is after "Chrome"
else if ((vrOfSet=navigtr.indexOf("Chrome"))!=-1) {
userBrowserNm = "Chrome";
getFlDesc = navigtr.substring(vrOfSet+7);
}
// In Safari, the true version is after "Safari" or after "Version"
else if ((vrOfSet=navigtr.indexOf("Safari"))!=-1) {
userBrowserNm = "Safari";
getFlDesc = navigtr.substring(vrOfSet+7);
if ((vrOfSet=navigtr.indexOf("Version"))!=-1)
getFlDesc = navigtr.substring(vrOfSet+8);
}
// In Firefox, the true version is after "Firefox"
else if ((vrOfSet=navigtr.indexOf("Firefox"))!=-1) {
userBrowserNm = "Firefox";
getFlDesc = navigtr.substring(vrOfSet+8);
}
// In most other browsers, "name/version" is at the end of userAgent
else if ( (nameOffset=navigtr.lastIndexOf(' ')+1) <
(vrOfSet=navigtr.lastIndexOf('/')) )
{
userBrowserNm = navigtr.substring(nameOffset,vrOfSet);
getFlDesc = navigtr.substring(vrOfSet+1);
if (userBrowserNm.toLowerCase()==userBrowserNm.toUpperCase()) {
userBrowserNm = navigator.appName;
}
}
// trim the getFlDesc string at semicolon/space if present
if ((ix=getFlDesc.indexOf(";"))!=-1)
getFlDesc=getFlDesc.substring(0,ix);
if ((ix=getFlDesc.indexOf(" "))!=-1)
getFlDesc=getFlDesc.substring(0,ix);
userMejorVer = parseInt(''+getFlDesc,10);
if (isNaN(userMejorVer)) {
getFlDesc = ''+parseFloat(navigator.appVersion);
userMejorVer = parseInt(navigator.appVersion,10);
}
document.write(''
+'User Browser name = '+userBrowserNm+'<br>'
+'User Full version = '+getFlDesc+'<br>'
+'User Major version = '+userMejorVer+'<br>'
+'User navigator.appName = '+navigator.appName+'<br>'
+'User navigator.userAgent = '+navigator.userAgent+'<br>'
)
Lấy tên trình duyệt trong JavaScript
console.log(navigator.userAgent);
Thuộc tính userAgent bên trong đối tượng navigator trả về giá trị của tiêu đề user-agent được gửi bởi trình duyệt đến máy chủ.
Hy vọng bạn đã có ý tưởng về cách lấy tên trình duyệt trong JavaScript.
- Bài viết trên blog này ban đầu được xuất bản tại: https://www.pakainfo.com