js-获取用户移动端网络类型:wifi、4g、3g、2g...
今天工作时间很宽裕,
忽然想起,自己做过的所有页面中,有些页面经常会面临用户在网络状态很差的时候打开页面,页面是挂了的状态,感觉很LOW~。
所以我决定在今后的页面中我需要先判断用户的网络状态,
若是很差的话,我首先会提醒他,当前网络状态不是很好,页面加载状态不是很好,提醒他最好切换网络状态;
尤其是可以用在播放视频的时候,若用户使用的是流量,可以清明的提醒用户“当前是在用流量播放视频”,好吧,也就我这么好的人才会提醒
以下是获取用户网络状态的代码:
getNetworkType()
function getNetworkType() {
var ua = navigator.userAgent;
var networkStr = ua.match(/NetType\/\w+/) ? ua.match(/NetType\/\w+/)[0] : 'NetType/other';
networkStr = networkStr.toLowerCase().replace('nettype/', '');
var networkType;
switch(networkStr) {
case 'wifi':
networkType = 'wifi';
break;
case '4g':
networkType = '4g';
break;
case '3g':
networkType = '3g';
break;
case '3gnet':
networkType = '3g';
break;
case '2g':
networkType = '2g';
break;
default:
networkType = 'other';
}
alert(networkStr)
}
注:5g时代已来临