网络状况 API

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

网络状态 API 可以获取到系统的网络连接信息,比如说连接方式是 WiFi 还是蜂窝。应用程序可以根据此信息为用户展现不同清晰度的内容。该 API 是由 NetworkInformation 接口和 Navigator 接口上新增的一个 connection 属性组成的。

侦测连接状态变化

下面是一个侦测用户设备连接状态变化的例子。

var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
var type = connection.type;
function updateConnectionStatus() {
  console.log("设备的网络连接从" + type + "变成了" + connection.type);
}
connection.addEventListener('typechange', updateConnectionStatus);

规范

Specification Status Comment
Network Information API
Network Information API
Editor's Draft Initial specification

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 未实现 未实现 未实现 未实现 未实现
Feature Android Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile
Basic support 2.2 webkit 12.0[1] 1.4 未实现 未实现 未实现

[1] 在 Firefox 中,网络状况 API 可以通过 dom.netinfo.enabled 偏好选项来控制开启与否。

相关链接

文档标签和贡献者