Javascript 在线/离线连接重定向PhoneGap/Cardova?
我正在使用PhoneGap/Cordova 3.3.x开发一个应用程序,但我没有一个脚本可以检查连接是否可用,如果可用,则显示main.html。如果没有连接,则显示offline.html。现在,我的index.html当前重定向到我的main.html,我在index.html中有这个脚本,尽管它不起作用。我尝试了几个其他脚本,但都没有用。如果我还需要一个合适的.js文件,请告诉我,我知道对于旧的phonegap构建,您过去必须在assets?中包含一个phonegap.js文件?。。有什么帮助吗?::Javascript 在线/离线连接重定向PhoneGap/Cardova?,javascript,networking,redirect,cordova,offline,Javascript,Networking,Redirect,Cordova,Offline,我正在使用PhoneGap/Cordova 3.3.x开发一个应用程序,但我没有一个脚本可以检查连接是否可用,如果可用,则显示main.html。如果没有连接,则显示offline.html。现在,我的index.html当前重定向到我的main.html,我在index.html中有这个脚本,尽管它不起作用。我尝试了几个其他脚本,但都没有用。如果我还需要一个合适的.js文件,请告诉我,我知道对于旧的phonegap构建,您过去必须在assets?中包含一个phonegap.js文件?。。有什么
<script>
function checkConnection() {
var networkState = navigator.connection.type;
var states = {};
states[Connection.UNKNOWN] = 'Unknown connection';
states[Connection.ETHERNET] = 'Ethernet connection';
states[Connection.WIFI] = 'WiFi connection';
states[Connection.CELL_2G] = 'Cell 2G connection';
states[Connection.CELL_3G] = 'Cell 3G connection';
states[Connection.CELL_4G] = 'Cell 4G connection';
states[Connection.NONE] = 'No network connection';
}
if (networkState == Connection.NONE ){
window.location = "offline.html";
}
}
}
window.location='./main.html';
</script>
我也尝试过./offline,它只给了我默认的安卓页面,但不可用。
提前谢谢 您可以在与设备日相同的加载位置订阅两个事件 这两个事件是联机和脱机的:
document.addEventListener("offline", this.onReceivedOffline, false);
document.addEventListener("online", this.onReceivedOnline, false);
就这样吧
document.addEventListener("offline", onOffline, false);
function onOffline()
{
window.location = "offline.html";
}
您可以在此处阅读更多信息:
我想补充一点,我正在Android平台上进行试验,但该应用程序将部署在所有3build选项上。出于某种原因,我没有任何运气,我在下面发布了另一个问题,你是否知道为什么这样做不起作用?最初我遇到了找不到类错误,在再次添加cordova.js后,该错误被删除。我被难住了?提前谢谢!我不能对另一个问题发表评论。。但是,您在离线和在线上订阅了2次。删除以下行:document.addEventListeneroffline、this.onReceivedOffline、false;document.addEventListeneronline,this.onReceivedOnline,false;哎呀!这么简单的疏忽!!再次感谢你帮了莫顿大忙