确定互联网连接是否可用

发布于 2024-11-02 04:46:04 字数 45 浏览 1 评论 0原文

你们如何在 sencha touch 应用程序中检查设备是否已连接到互联网?

how do you folks check if the device is connected to the internet in a sencha touch app?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

太阳公公是暖光 2024-11-09 04:46:04

有一个名为 navigator.onLine 的属性(一般浏览器支持,不是特定于 Sencha)

如果我在 PhoneGap 应用程序中(如果您使用 Sencha Touch,您经常会遇到这种情况),我宁愿使用他们的 network.isReachable 函数,因为我根据经验发现它更可靠。

还有一种叫做“离线事件”的东西,John Resig 在他的博客上描述了它们:http://ejohn.org /blog/offline-events/

There's an attribute called navigator.onLine (general browser support, not specific for Sencha)

If I'm in a PhoneGap application (which you often are if you're using Sencha Touch), I'd rather use their network.isReachable function, since I've by experience found it more reliable.

There's also something called 'Offline events', John Resig describes them on his blog: http://ejohn.org/blog/offline-events/.

〃安静 2024-11-09 04:46:04

如果在 ajax 请求期间没有网络连接,sencha touch 将返回状态为 0 的响应。这就是我们在应用程序中使用的内容(也适用于phonegap):

// global error handling
Ext.Ajax.on('requestexception', function(connection, response) {
  // get rid of any loading masks that are present
  Ext.each(Ext.query('.x-mask'), function(el) {
      new Ext.Element(el).hide()
  });
  switch(response.status) {
    case 0 :
      Ext.Msg.alert('Error Loading', 'No Internet connection.');
      break;
    case 401 :
      Ext.Msg.alert('Login Failed', 'Check your username and password.');
      break;
    default :
      Ext.Msg.alert('Whoops!', 'An unexpected error has occurred and we have been alerted.');
  }
});

请注意,这是针对 touch 1.1 的,尚未在 2.0 中尝试过。

If there is no network connection during an ajax request sencha touch will return a response with a 0 status. So this is what we're using in our app (works in phonegap too):

// global error handling
Ext.Ajax.on('requestexception', function(connection, response) {
  // get rid of any loading masks that are present
  Ext.each(Ext.query('.x-mask'), function(el) {
      new Ext.Element(el).hide()
  });
  switch(response.status) {
    case 0 :
      Ext.Msg.alert('Error Loading', 'No Internet connection.');
      break;
    case 401 :
      Ext.Msg.alert('Login Failed', 'Check your username and password.');
      break;
    default :
      Ext.Msg.alert('Whoops!', 'An unexpected error has occurred and we have been alerted.');
  }
});

Note that this is for touch 1.1, haven't tried in in 2.0 yet.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文