微信网页中获取客户端网络状态
WeixinJSBridge.invoke('getNetworkType', function(e) {
// 在这里拿到e.err_msg,这里面就包含了所有的网络类型
alert(e.err_msg);
});
e.err_msg 值的意义
network_type:wifi wifi网络
network_type:edge 非wifi,包含3G/2G
network_type:fail 网络断开连接
network_type:wwan 2g或者3g
通过监听网络变化输出当前网络状态
navigator.connection.addEventListener('change', function() {
if (typeof window.WeixinJSBridge == 'undefined') {
//判断WeixinJSBridge是否存在
document.addEventListener('WeixinJSBridgeReady', function() {
WeixinJSBridge.invoke('getNetworkType', function(e) {
checkNet(e.err_msg);
});
});
} else {
WeixinJSBridge.invoke('getNetworkType', {}, function(e) {
checkNet(e.err_msg);
});
}
});
function checkNet(info) {
var message = '';
if (info == 'network_type:fail') {
message = '网络已断开!';
} else if (info == 'network_type:edge') {
message = '使用无线数据';
} else if (info == 'network_type:wifi') {
message = '当前使用的是WiFi';
} else if (info == 'network_type:wwan') {
message = '当前使用的是2g/3g';
}
layer.open({
content: message,
skin: 'msg',
style: 'color:#fff;',
time: 5 //2秒后自动关闭
});
}