Skip to content

Instantly share code, notes, and snippets.

@steida
Created April 24, 2009 18:44
Show Gist options
  • Save steida/101278 to your computer and use it in GitHub Desktop.
Save steida/101278 to your computer and use it in GitHub Desktop.
/*
* QWE - Browser
*
* Copyright (c) 2009 [Daniel Steigerwald](http://daniel.steigerwald.cz)
*/
QWE()(function(Q) {
Browser = {
platform: (navigator.platform.match(/mac|win|linux/i) || ['other'])[0].toLowerCase(),
features: {
xpath: !!(doc.evaluate),
air: !!(win.runtime)
},
quirks: {},
boxModel: !doc.compatMode || doc.compatMode == 'CSS1Compat'
};
/*
* Browser detection is based on user agent. You should use feature detection whereever it's possible.
*
* if (Browser.ie && Browser.ie > 6) ..
* if (Browser.platform == 'mac') ..
* if (Browser.Name == 'chrome') ..
* if (Browser.ff && Browser.ff > 2)..
*/
// check for the minor browsers first
(function() {
var browsers = ['opera', 'ie-msie', 'ff-firefox', 'chrome', 'safari'],
ua = navigator.userAgent.toLowerCase();
for (var i = 0, l = browsers.length; i < l; i++) {
var def = browsers[i].split('-'),
name = def[0],
uaName = def[1] || name,
match = new RegExp(uaName + '[\\s\\/]([^\\s]*)').exec(ua),
version = match && match[1];
if (version) {
Browser.name = name;
Browser[name] = parseFloat(version);
}
}
})();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment