Как обнаружить перекрестный браузер события онлайн/в режиме офлайн?

Я пытаюсь точно обнаружить, когда браузер идет офлайн, с помощью HTML5 и офлайновые события онлайн.

Вот мой код:

<script>
    // FIREFOX
    $(window).bind("online", applicationBackOnline); 
    $(window).bind("offline", applicationOffline);

    //IE
    window.onload = function() {
        document.body.ononline = IeConnectionEvent;
        document.body.onoffline = IeConnectionEvent;
    } 
</script>

Это хорошо работает, когда я просто поразил "Работу офлайн" или над Firefox или над IE, но это является отчасти случайным образом рабочим, когда я на самом деле отключаю провод.

Что лучший способ состоит в том, чтобы обнаружить это изменение? Я хотел бы постараться не повторять вызовы ajax с тайм-аутами.

105
задан Brian Tompsett - 汤莱恩 2 September 2019 в 18:47
поделиться

1 ответ

В HTML5 можно использовать свойство navigator.onLine . Посмотрите здесь:

http://www.w3.org/TR/offline-webapps/#related

Вероятно, ваше текущее поведение является случайным, поскольку javascript только готовит переменную «браузер», а затем знает, если вы офлайн и онлайн, но на самом деле он не проверяет сетевое соединение.

Сообщите нам, если это то, что вы ищете.

С уважением,

5
ответ дан 24 November 2019 в 04:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: