Find browser type and version?

Does anyone know a good and reliable way to find out the type and version of the browser installed on the client, or using JavaScript / jQuery?

It seems like jQuery has built-in functions, but it has problems detecting Chrome. Any other reliable way to do this?

+7
source share
3 answers

If you need browser information that your visitor uses and use it to display statistics or display information to the user, you can use jQuery Browser Plugin .

It gives you an object in javascript that contains all the information about the browser used.

It is imperative to detect functions instead of detecting the browser when you want to determine if a function is available in the browser, apply fixes, etc.

No need to reinvent the wheel.

+8
source

Approach 1:
Note: Since jQuery 1.3, jQuery.browser is deprecated

Try the following:

<!DOCTYPE html> <html> <head> <style> p { color:green; font-weight:bolder; margin:3px 0 0 10px; } div { color:blue; margin-left:20px; font-size:14px; } span { color:red; } </style> <script src="http://code.jquery.com/jquery-latest.js"></script> </head> <body> <p>Browser info: (key : value)</p> <script> jQuery.each(jQuery.browser, function(i, val) { $("<div>" + i + " : <span>" + val + "</span>") .appendTo( document.body ); });</script> </body> </html> 

Approach 2:

 // A quick solution without using regexp (to speed up a little). var userAgent = navigator.userAgent.toString().toLowerCase(); if ((userAgent.indexOf('safari') != -1) && !(userAgent.indexOf('chrome') != -1)) { alert('We should be on Safari only!'); }
// A quick solution without using regexp (to speed up a little). var userAgent = navigator.userAgent.toString().toLowerCase(); if ((userAgent.indexOf('safari') != -1) && !(userAgent.indexOf('chrome') != -1)) { alert('We should be on Safari only!'); } 
+7
source

Since $.browser is $.browser removed in jQuery 1.9, use this:

 // ---------------------------------------------------------- // A short snippet for detecting versions of IE in JavaScript // without resorting to user-agent sniffing // ---------------------------------------------------------- // If you're not in IE (or IE version is less than 5) then: // ie === undefined // If you're in IE (>=5) then you can determine which version: // ie === 7; // IE7 // Thus, to detect IE: // if (ie) {} // And to detect the version: // ie === 6 // IE6 // ie > 7 // IE8, IE9 ... // ie < 9 // Anything less than IE9 // ---------------------------------------------------------- // UPDATE: Now using Live NodeList idea from @jdalton var ie = (function(){ var undef, v = 3, div = document.createElement('div'), all = div.getElementsByTagName('i'); while ( div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->', all[0] ); return v > 4 ? v : undef; }()); 
+1
source

All Articles