我有类似于以下链接的要求,但我必须使用JavaScript来处理它。我必须检测移动互联网连接是2g / 3g还是WIFI。基于连接,我必须执行不同的操作.. 注意:移动设备可以是任何操作系统,如andriod / iOS / BB ..我需要处理任何移动操作系统。
Is there a way to detect what kind of connection I'm using ? WiFi, 3G or Ethernet?
请求主人帮我输入。谢谢:))
答案 0 :(得分:16)
Network Information API(这是一项实验性技术):
Network Information API提供有关系统的信息 连接,这是一般连接类型(例如,' wifi', '蜂窝'等)。这可用于选择高清内容 或基于用户连接的低清内容。整个 API包含添加domxref(" NetworkInformation") 接口和Navigator接口的单个属性: Navigator.connection。
var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
var type = connection.type;
function updateConnectionStatus() {
alert("Connection type is change from " + type + " to " + connection.type);
}
connection.addEventListener('typechange', updateConnectionStatus);
答案 1 :(得分:-3)
我写了一个小工具来做到这一点。你可以在这里试试 http://ashanbh.github.io/detectClientSpeed/example2.html 并在github上分叉:https://github.com/ashanbh/detectClientSpeed
用法:
<script src="scripts/require.js"></script>
<script>
requirejs(['scripts/detectSpeed'], function (detectSpeed) {
//Callback to receive timing information
var callback = function (timings) {
console.log(timings);
}
detectSpeed.startSpeedCheck("https://s3-us-west-1.amazonaws.com/amit.shanbhag/3g/coffee-apple-iphone-laptop.jpg", callback);
});
</script>