Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting a browser's name client-side

Is there any object or method that returns data about the browser, client-side?

For example, I need to detect if the browser is IE (Interner Explorer). Following is the code snippet.

function isInternetExplorer() {     if(navigator.appName.indexOf("Microsoft Internet Explorer") != -1)     {         return true;     }     return false; } 

Is there a better way?

like image 571
Viral Shah Avatar asked Sep 19 '12 06:09

Viral Shah


People also ask

How can you find a clients browser name?

How do I detect the browser name ? You can use the navigator. appName and navigator. userAgent properties.

How can you detect the client's browser name JS?

To detect user browser information we use the navigator. userAgent property. And then we match with the browser name to identify the user browser. Now call this JS function on page load, and this will display the user browser name on page load.

How can I get browser userAgent?

The user-agent string of the browser is accessed using the navigator. userAgent property and then stored in a variable. The presence of the strings of a browser in this user-agent string is detected one by one. Detecting the Chrome browser: The user-agent of the Chrome browser is “Chrome”.

How do you check which browser is being used?

In the browser's toolbar, click on “Help"or the Settings icon. Click the menu option that begins “About” and you'll see what type and version of browser you are using.


2 Answers

JavaScript side - you can get browser name like these ways...

if(window.navigator.appName == "") OR if(window.navigator.userAgent == "") 
like image 157
pedram Avatar answered Sep 28 '22 19:09

pedram


This is pure JavaScript solution. Which I was required.
I tried on different browsers. It is working fine. Hope it helps.

How do I detect the browser name ?

You can use the navigator.appName and navigator.userAgent properties. The userAgent property is more reliable than appName because, for example, Firefox (and some other browsers) may return the string "Netscape" as the value of navigator.appName for compatibility with Netscape Navigator.

Note, however, that navigator.userAgent may be spoofed, too – that is, clients may substitute virtually any string for their userAgent. Therefore, whatever we deduce from either appName or userAgent should be taken with a grain of salt.

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>'); 

From the source javascripter.net

like image 38
Aniket Kulkarni Avatar answered Sep 28 '22 19:09

Aniket Kulkarni