Skip to content

Instantly share code, notes, and snippets.

@matesnippets
Created February 14, 2015 12:54
Show Gist options
  • Save matesnippets/cc0a7deb50ba0bdca7ae to your computer and use it in GitHub Desktop.
Save matesnippets/cc0a7deb50ba0bdca7ae to your computer and use it in GitHub Desktop.
JavaScript, detect browser
/**
* Detect a browser
* http://stackoverflow.com/questions/13478303/correct-way-to-use-modernizr-to-detect-ie
*/
var BrowserDetect =
{
init: function ()
{
this.browser = this.searchString(this.dataBrowser) || "Other";
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown";
},
searchString: function (data)
{
for (var i=0 ; i < data.length ; i++)
{
var dataString = data[i].string;
this.versionSearchString = data[i].subString;
if (dataString.indexOf(data[i].subString) != -1)
{
return data[i].identity;
}
}
},
searchVersion: function (dataString)
{
var index = dataString.indexOf(this.versionSearchString);
if (index == -1) return;
return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
},
dataBrowser:
[
{ string: navigator.userAgent, subString: "Chrome", identity: "Chrome" },
{ string: navigator.userAgent, subString: "MSIE", identity: "Explorer" },
{ string: navigator.userAgent, subString: "Firefox", identity: "Firefox" },
{ string: navigator.userAgent, subString: "Safari", identity: "Safari" },
{ string: navigator.userAgent, subString: "Opera", identity: "Opera" }
]
};
BrowserDetect.init();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment