javascriptkankan(good)网络

纯js实现ping功能,判断ip是否可以ping通

2022-12-26  本文已影响0人  扶得一人醉如苏沐晨
export function ping (ip) {
  var img = new Image();
  var start = new Date().getTime();
  var flag = false;
  var isCloseWifi = true;
  var hasFinish = false;
  img.onload = function () {
    if (!hasFinish) {
      flag = true;
      hasFinish = true;
      img.src = 'X:\\';
      console.log('Ping ' + ip + ' success. ');
    }
  };
  img.onerror = function () {
    if (!hasFinish) {
      if (!isCloseWifi) {
        flag = true;
        img.src = 'X:\\';
        console.log('Ping ' + ip + ' success. ');
      } else {
        console.log('network is not working!');
      }
      hasFinish = true;
    }
  };
  setTimeout(function () {
    isCloseWifi = false;
    console.log('network is working, start ping...');
  }, 2);
  img.src = 'http://' + ip + '/' + start;
  var timer = setTimeout(function () {
    if (!flag) {
      hasFinish = true;
      img.src = 'X://';
      flag = false;
      console.log('Ping ' + ip + ' fail. ');
    }
  }, 1500);
}
上一篇下一篇

猜你喜欢

热点阅读