【问题标题】:how to programmatically check availability of internet connection using jquery如何使用 jquery 以编程方式检查 Internet 连接的可用性
【发布时间】:2012-02-28 07:28:56
【问题描述】:

我正在开发 android phonegap 应用程序。当我在没有互联网连接的情况下运行应用程序时,它会被强制关闭。所以,在使用 jquery/javascript 调用 ajax 之前,我需要检查 dom 中的互联网连接

这是我的示例代码:

var a=navigator.onLine;
 if(a){
  alert('online');
$.ajax({
            type: "GET",
            url: url, 
            dataType: 'json',
            async: true, 
            cache: false,
            success: function(data){ 

                alert('success');
            },
            error: function(e){

                alert('error');
            }
    });
 }else{
  alert('ofline');
 }

但我总是收到警报('在线'),即使没有互联网连接。请指导我。提前谢谢

【问题讨论】:

  • 你的 ajax 语句放错地方了。它希望刚好低于警报('在线')
  • 谢谢。我已经更新了我的帖子。请检查一下。

标签: jquery android ajax cordova


【解决方案1】:

正如您在标签中指定的那样,如果没有 PhoneGap API,您将无法访问硬件规格,而要检查可用连接,您只需要实现连接

connection 对象允许访问设备的蜂窝和 wifi 连接信息。

function checkConnection() {
    var networkState = navigator.network.connection.type;

    var states = {};
    states[Connection.UNKNOWN]  = 'Unknown connection';
    states[Connection.ETHERNET] = 'Ethernet connection';
    states[Connection.WIFI]     = 'WiFi connection';
    states[Connection.CELL_2G]  = 'Cell 2G connection';
    states[Connection.CELL_3G]  = 'Cell 3G connection';
    states[Connection.CELL_4G]  = 'Cell 4G connection';
    states[Connection.NONE]     = 'No network connection';

    alert('Connection type: ' + states[networkState]);
}

checkConnection();

PhoneGap Docs 中提供了完整示例

【讨论】:

  • 感谢您的回复。我已添加此代码。但在警报中,即使没有互联网连接,我总是收到“Cell 3G 连接”。请指导我。提前致谢。
  • 您将始终拥有 3G 连接,该连接通过您的数据连接用于您的订阅!您需要说您不想要3G数据...我知道如何在iPhone上做到这一点,但在Android上却不知道...搜索它。在模拟器中,只需断开互联网即可进行测试。
  • 谢谢。我已禁用 android 模拟器中的数据启用设置,并且在运行应用程序时,我得到连接类型:未定义。请指导我。提前致谢。
【解决方案2】:

也许您可以使用设备的网络连接状态属性:

var a = (navigator.network.connection.type != Connection.NONE);

另见"Connection" API

【讨论】:

    猜你喜欢
    • 2015-11-18
    • 1970-01-01
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 2012-06-14
    • 2013-12-01
    • 2011-06-27
    相关资源
    最近更新 更多