我的简历,就绪和暂停事件工作正常。我在线/离线事件有问题。当我将我的设备置于飞行模式时,反之亦然。当我从互联网断开连接时,我没有得到任何结果。这是我的代码:
var app ={
initialize:function() {
this.bindEvents();
this.testzone = {};
},
bindEvents:function(){
document.addEventListener("deviceready", this.onDeviceReady,false);
document.addEventListener("pause", this.onPause,false);
document.addEventListener("resume", this.onResume,false);
},
onDeviceReady:function() {
document.addEventListener("online", this.onOnline,false);
document.addEventListener("offline", this.onOffline,false);
console.log("Readyii");
app.testzone = document.getElementById("test-zone");
app.testzone.innerHTML = "Readyii";
},
onPause: function() {
app.testzone.innerHTML += "<br />Paused";
},
onResume: function() {
app.testzone.innerHTML += "<br />Resumed";
},
onOnline: function() {
app.testzone.innerHTML += "<br />Online";
},
onOffline: function() {
app.testzone.innerHTML += "<br />Offline";
}
}
以下代码实际上是在bindEvents中,但是我将它们移到了onDeviceReady中:
document.addEventListener("online", this.onOnline,false);
document.addEventListener("offline", this.onOffline,false);
答案 0 :(得分:0)
更改online
和offline
eventlisteners中方法调用的范围。
因此,而不是this.onOnline
使用app.onOnline
(或将app替换为父级)。
document.addEventListener("online", app.onOnline,false);
document.addEventListener("offline", app.onOffline,false);