summaryrefslogtreecommitdiffstats
path: root/jquery/jquery.browser.js
diff options
context:
space:
mode:
authorJames Nylen <jnylen@gmail.com>2014-09-16 07:40:24 -0500
committerJames Nylen <jnylen@gmail.com>2014-09-16 07:40:24 -0500
commit9cc4ab7abfb0a3a9c921d51570903fc2640044df (patch)
tree7f4578e9b1ee8ce5e112240ab299e79b16115916 /jquery/jquery.browser.js
parent11da1623d8ae40dc435c3a3098342beb1ffb2a59 (diff)
downloadd3-process-map-9cc4ab7abfb0a3a9c921d51570903fc2640044df.zip
d3-process-map-9cc4ab7abfb0a3a9c921d51570903fc2640044df.tar.gz
d3-process-map-9cc4ab7abfb0a3a9c921d51570903fc2640044df.tar.bz2
Work around IE bug regarding paths with markersorigin/fix-ie-markers
Fixes #6.
Diffstat (limited to 'jquery/jquery.browser.js')
-rw-r--r--jquery/jquery.browser.js112
1 files changed, 112 insertions, 0 deletions
diff --git a/jquery/jquery.browser.js b/jquery/jquery.browser.js
new file mode 100644
index 0000000..3bb26d7
--- /dev/null
+++ b/jquery/jquery.browser.js
@@ -0,0 +1,112 @@
+/*!
+ * jQuery Browser Plugin v0.0.6
+ * https://github.com/gabceb/jquery-browser-plugin
+ *
+ * Original jquery-browser code Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors
+ * http://jquery.org/license
+ *
+ * Modifications Copyright 2013 Gabriel Cebrian
+ * https://github.com/gabceb
+ *
+ * Released under the MIT license
+ *
+ * Date: 2013-07-29T17:23:27-07:00
+ */
+
+(function( jQuery, window, undefined ) {
+ "use strict";
+
+ var matched, browser;
+
+ jQuery.uaMatch = function( ua ) {
+ ua = ua.toLowerCase();
+
+ var match = /(opr)[\/]([\w.]+)/.exec( ua ) ||
+ /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
+ /(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec( ua ) ||
+ /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
+ /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
+ /(msie) ([\w.]+)/.exec( ua ) ||
+ ua.indexOf("trident") >= 0 && /(rv)(?::| )([\w.]+)/.exec( ua ) ||
+ ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
+ [];
+
+ var platform_match = /(ipad)/.exec( ua ) ||
+ /(iphone)/.exec( ua ) ||
+ /(android)/.exec( ua ) ||
+ /(windows phone)/.exec( ua ) ||
+ /(win)/.exec( ua ) ||
+ /(mac)/.exec( ua ) ||
+ /(linux)/.exec( ua ) ||
+ /(cros)/i.exec( ua ) ||
+ [];
+
+ return {
+ browser: match[ 3 ] || match[ 1 ] || "",
+ version: match[ 2 ] || "0",
+ platform: platform_match[ 0 ] || ""
+ };
+ };
+
+ matched = jQuery.uaMatch( window.navigator.userAgent );
+ browser = {};
+
+ if ( matched.browser ) {
+ browser[ matched.browser ] = true;
+ browser.version = matched.version;
+ browser.versionNumber = parseInt(matched.version);
+ }
+
+ if ( matched.platform ) {
+ browser[ matched.platform ] = true;
+ }
+
+ // These are all considered mobile platforms, meaning they run a mobile browser
+ if ( browser.android || browser.ipad || browser.iphone || browser[ "windows phone" ] ) {
+ browser.mobile = true;
+ }
+
+ // These are all considered desktop platforms, meaning they run a desktop browser
+ if ( browser.cros || browser.mac || browser.linux || browser.win ) {
+ browser.desktop = true;
+ }
+
+ // Chrome, Opera 15+ and Safari are webkit based browsers
+ if ( browser.chrome || browser.opr || browser.safari ) {
+ browser.webkit = true;
+ }
+
+ // IE11 has a new token so we will assign it msie to avoid breaking changes
+ if ( browser.rv )
+ {
+ var ie = "msie";
+
+ matched.browser = ie;
+ browser[ie] = true;
+ }
+
+ // Opera 15+ are identified as opr
+ if ( browser.opr )
+ {
+ var opera = "opera";
+
+ matched.browser = opera;
+ browser[opera] = true;
+ }
+
+ // Stock Android browsers are marked as Safari on Android.
+ if ( browser.safari && browser.android )
+ {
+ var android = "android";
+
+ matched.browser = android;
+ browser[android] = true;
+ }
+
+ // Assign the name and platform variable
+ browser.name = matched.browser;
+ browser.platform = matched.platform;
+
+
+ jQuery.browser = browser;
+})( jQuery, window ); \ No newline at end of file