2012-07-24 1 views
2

Я JS newb, поэтому я пытаюсь понять, как сделать этот пример из w3c для работы в моем WebApp, который будет работать в рамках PhoneGap ...JS Detect Offline? Что я делаю неправильно

Я конечно, это легко, но когда запускается прослушиватель событий, он запускает подключенную функцию с предупреждением, проблема в том, что она снова начинает все заново отвлекать. Так что скажем, что я откидываю свой iphone, я получу предупреждение, после чего он выполнит следующее предупреждение, в котором говорится о его онлайн-доступе ... Anywho ... Если у кого-нибудь из вас есть какие-то лучшие идеи о выполнении такой функции, дайте мне знать PhoneGap Cordova также имеет два других метода.

<script> 
<!-- 
window.addEventListener("offline", function(e) {alert("offline");}) 
window.addEventListener("online", function(e) {alert("online");}) 
if (navigator.onLine) { 
    alert('online') 
    //functions to run online 
} else { 
    alert('offline'); 
    //offline functions or through into loop 
} 
--> 
</script> 
+0

получил ответ на него? Я также сталкиваюсь с тем же вопросом – exexzian

ответ

0

попробовать этот if(window.navigator.onLine) { alert('I am online');} я только проверил его в консоли, и это работает :)

+0

спасибо, но это в значительной степени то, что у меня было ... Проблема в том, что мой addEventListener испорчен ... Я не могу понять, как их разделить, чтобы, когда он уходит, запустите все скрипты под ним. Итак, с 'window.addEventListener («offline», function (e) {alert («offline»);}) window.addEventListener («онлайн», функция (e) {alert («онлайн»);})' онлайн-предупреждение будет запущено после того, как оффлайн-предупреждение отключится ... Я уверен, что это действительно просто. Я просто не знаком с eventlisterners. – CertDoctor

+0

Вот пример: window.addEventListener («offline», function (off) { alert («offline»); }, false); window.addEventListener ("онлайн", функция {on} { предупреждение ("онлайн"); }, false); Если я запустил это, он отключит оба события независимо от того, запускаю ли я его или нет. он всегда будет отключен, а затем Online. Помогите? – CertDoctor

+0

понял это ... Он отлично работает. За исключением iOS-симулятора. Затем это эпично не удается. – CertDoctor

1

Вы пропускаете параметр в функции addEventListener. Для меня это нормально работает:

window.addEventListener("offline", function() { 
    console.log("Online status: " + navigator.onLine); 
}, false); 

window.addEventListener("online", function() { 
    console.log("Online status: " + navigator.onLine); 
}, false); 

 Смежные вопросы

  • Нет связанных вопросов^_^