summaryrefslogtreecommitdiff
path: root/source/bower_components/modernizr/feature-detects/network-connection.js
diff options
context:
space:
mode:
Diffstat (limited to 'source/bower_components/modernizr/feature-detects/network-connection.js')
-rw-r--r--source/bower_components/modernizr/feature-detects/network-connection.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/source/bower_components/modernizr/feature-detects/network-connection.js b/source/bower_components/modernizr/feature-detects/network-connection.js
new file mode 100644
index 0000000..242cdfe
--- /dev/null
+++ b/source/bower_components/modernizr/feature-detects/network-connection.js
@@ -0,0 +1,22 @@
+// determining low-bandwidth via navigator.connection
+
+// There are two iterations of the navigator.connection interface:
+
+// The first is present in Android 2.2+ and only in the Browser (not WebView)
+// : docs.phonegap.com/en/1.2.0/phonegap_connection_connection.md.html#connection.type
+// : davidbcalhoun.com/2010/using-navigator-connection-android
+
+// The second is specced at dev.w3.org/2009/dap/netinfo/ and perhaps landing in WebKit
+// : bugs.webkit.org/show_bug.cgi?id=73528
+
+// unknown devices are assumed as fast
+// for more rigorous network testing, consider boomerang.js: github.com/bluesmoon/boomerang/
+
+Modernizr.addTest('lowbandwidth', function() {
+
+ var connection = navigator.connection || { type: 0 }; // polyfill
+
+ return connection.type == 3 || // connection.CELL_2G
+ connection.type == 4 || // connection.CELL_3G
+ /^[23]g$/.test(connection.type); // string value in new spec
+});