我必须检查应用启动时的网络连接,但PhoneGap在线/离线事件在任何状态更改后都会触发。如果应用程序以在线模式启动,则联机事件不会触发,直到它脱机,然后联机。
这是代码,
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function() {
document.addEventListener("offline", this.onOffline, false);
document.addEventListener("online", this.onOnline, false);
},
代码错了吗?
答案 0 :(得分:3)
在线/离线事件仅在状态更改时触发。 如果您需要检查特定点的连接,可以使用navigator.network.connection.type。
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function() {
document.addEventListener("offline", this.onOffline, false);
document.addEventListener("online", this.onOnline, false);
if((navigator.network.connection.type).toUpperCase() == "NONE" &&
(navigator.network.connection.type).toUpperCase() == "UNKNOWN") {
this.onOffline();
}
else {
this.onOnline();
}
},
希望这会对你有所帮助。