How can I detect browser type using jQuery?
The best solution is probably: use Modernizr.
However, if you necessarily want to use $.browser property, you can do it using jQuery Migrate plugin (for JQuery >= 1.9 - in earlier versions you can just use it) and then do something like:
if($.browser.chrome) {
alert(1);
} else if ($.browser.mozilla) {
alert(2);
} else if ($.browser.msie) {
alert(3);
}
And if you need for some reason to use navigator.userAgent, then it would be:
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());
$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
My solution for ie detection:
if (navigator.userAgent.match(/msie/i) || navigator.userAgent.match(/trident/i) ){
$("html").addClass("ie");
}
Jquery needed.
You can use this code to find correct browser and you can make changes for any target browser.....
function myFunction() {
if((navigator.userAgent.indexOf("Opera") || navigator.userAgent.indexOf('OPR')) != -1 ){
alert('Opera');
}
else if(navigator.userAgent.indexOf("Chrome") != -1 ){
alert('Chrome');
}
else if(navigator.userAgent.indexOf("Safari") != -1){
alert('Safari');
}
else if(navigator.userAgent.indexOf("Firefox") != -1 ){
alert('Firefox');
}
else if((navigator.userAgent.indexOf("MSIE") != -1 ) || (!!document.documentMode == true )){
alert('IE');
}
else{
alert('unknown');
}
}
<!DOCTYPE html>
<html>
<head>
<title>Browser detector</title>
</head>
<body onload="myFunction()">
// your code here
</body>
</html>