JavaScript中 判断网络状态的几种方法

这篇具有很好参考价值的文章主要介绍了JavaScript中 判断网络状态的几种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 使用 Navigator onLine 属性

Navigator onLine 属性判断浏览器是否在线,在线返回 true,离线返回 false;
Navigator onLine 是只读属性,所有主流浏览器都支持 onLine 属性;

if (window.navigator.onLine) {
  console.log('网络正常!');
} else {
  console.log('网络中断!');
}
2. 使用 ononline、onoffline 事件

这两个方法属于 “侦听器”,在网络连接 / 断开的瞬间会触发(当网络从离线变为在线或从在线变为离线时,分别触发这两个事件)。
注意:检测 ononline 事件,要绑定在 window 对象上;

兼容 不兼容
attachEvent IE7、IE8 firefox、chrome、IE9、IE10、IE11、safari、opera
addEventListener firefox、chrome、IE、safari、opera IE7、IE8

完整代码:

<script type="text/javascript">
  if (window.addEventListener) {  
    window.addEventListener("online", () => {  
      console.log('网络连接恢复');
    }, true);  
    window.addEventListener("offline", () => {  
      console.log('网络连接中断');
    }, true);   
  }else if (window.attachEvent) {  
    window.attachEvent("ononline", () => {  
      console.log('网络连接恢复');
    });  
    window.attachEvent("onoffline", () => {  
      console.log('网络连接中断');
    }); 
  }else {  
    window.ononline = () => {  
      console.log('网络连接恢复');
    };  
    window.onoffline = () => {
      console.log('网络连接中断');
    }; 
  } 
</script> 
总结:

为了判断是否离线,在页面加载后,可先通过 navigator.onLine 取得初始的状态,然后通过ononline、onoffline 事件来确定网络连接状态是否变化。
一个缺点:navigator.onLine 和 online、offline事件却不是万能的,只能判断无线和网线是否连接,而不能进一步判断该网络是否能够上网。文章来源地址https://www.toymoban.com/news/detail-821076.html

到了这里,关于JavaScript中 判断网络状态的几种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • js判断是否为数字的几种方式

    typeof typeof 判断值是不是基本类型 number : instanceof instanceof 判断值是不是包装类 Number : Number.isInteger Number.isInteger 判断值是否是 整数 : 这几种方式的缺点,都是只能基于类型判断,无法判断字符串是否是数值。 parseInt 和 parseFloat 解析的时候遇到非法字符结束,返回解析到

    2024年02月16日
    浏览(32)
  • python 判断是否汉字的几种方法

    1. 使用Python内置的ord() ord()函数将字符转换为Unicode编码,然后判断其范围是否在汉字的范围内: 示例代码: 2. 使用Python内置的unicodedata库: 使用Python内置的unicodedata库可以用来判断一个字符是否为汉字 示例代码: 3. 使用正则表达式 可以使用正则表达式来判断一个字符是否为

    2024年02月12日
    浏览(61)
  • C语言中判断素数的几种方法

    作为C的初学者们希望大家看看这几种判断素数的方法 既然进来了就看完把 题目要求: 判断n是否为素数。 首先我们讲一下素数的判定:素数就是只能被1或者本身整除的数,这就延伸出了几种不同的判定方法。 方法一:因为判断素数相当于就是判断这个数能不能整除2-这个数

    2024年02月11日
    浏览(35)
  • C++之判断文件是否存在的几种方法

    文章目录 1. 方法一:C语言之access 2. 方法二:C++方法之ifstream 3. 方法三:fopen方法 4. 方法四:sys中的stat函数方法 可以使用C语言中unistd.h里的函数access()来判断文件是否存在,其原型如下: filename是文件名,mode有下列几种方法: mode Description F_OK 测试文件是否存在 R_OK 测试文件

    2024年02月13日
    浏览(45)
  • 使用python判断字母大小写的几种方法

    使用Python中的内置函数 isupper() 和 islower() 来判断一个字母是否为大写或小写字母。 用户输入一个字母,程序使用isupper()和islower()函数判断字母是否为大写或小写,并输出相应的信息。如果用户输入了除字母以外的字符,程序会输出一个错误信息。 使用ASCII码值来判断字母大

    2024年02月04日
    浏览(42)
  • JavaScript页面刷新的几种方法

    页面刷新是Web开发中常见的需求,它可以用于更新页面内容、重新加载数据或者重置用户界面。本文将介绍几种常见的JavaScript页面刷新方法,并提供相应的源代码示例。 使用location.reload()方法刷新页面: location.reload()方法用于重新加载当前页面。它会向服务器发送请求,获取

    2024年02月03日
    浏览(37)
  • JavaScript中数据过滤的几种方法

    JavaScript是一种广泛使用的编程语言,它提供了多种方法来对数据进行过滤。在本文中,我们将介绍JavaScript中常见的几种数据过滤方法,并提供相应的示例。 filter()方法是JavaScript数组对象的一个内置方法,它创建一个新数组,其中包含符合指定条件的所有元素。该方法接受一

    2024年02月04日
    浏览(34)
  • js几种打印方法的几种方法

    1. 引入插件: 首先,在您的 HTML 文件中引入 printJs 库。可以通过在 head 标签中添加以下代码来引入库文件: 这将从 CDN 加载 printJs 库的 JavaScript 文件和 CSS 文件。 2. 创建打印按钮: 在您的 HTML 文件中创建一个按钮,用于触发打印操作。例如: 3. 添加打印事件监听器: 在您的

    2024年02月13日
    浏览(38)
  • TCP客户端判断与服务端断开连接的几种方法

    目前已知的方法有: 1、 epoll(能检测正常的断开连接,事件触发机制,优点是快速,但是插拔网线是检测不到的) 2、自定义心跳包方式检测 3、keeplive方式检测 4、getsockopt 1、相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,

    2023年04月14日
    浏览(47)
  • 用 JavaScript 检测键盘大写锁定键的状态 - JS 判断大写锁定

    用户在输入密码的时候,由于看不到输入的字母,这时如果 Caps Lock 大写锁定键打开,会给用户造成不必要的困扰。让我们看看如何使用JavaScript检测大写锁定。 KeyboardEvent 上有一个名为 getmodifierState 的方法,我们可以使用它来执行此操作。这可以在键盘相关事件的事件侦听器

    2024年02月20日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包