1

我对 iOS 的 PhoneGap/Cordova 上的 onDeviceReady 事件有一些疑问。

我在具有多个页面的应用程序中使用它,它适用于我的 index.html 和指向同一 JS 文件的其他页面链接。但是我的应用程序中链接了另一个页面。此页面及其脚本托管在我的服务器上,其中 onDeviceReady 没有成功,我无法在这部分添加功能。

我想知道我是否需要在每个页面上添加此事件,以及它是否在托管页面上运行,或者可能由于其他原因不起作用。

在我的托管页面上,我使用以下代码:

JS

$(document).ready(function(){

document.addEventListener("deviceready",onDeviceReady,false); // Cordova is ready to be used!

function onDeviceReady() {
       DO SOMETHING !
}
});

HTML

<script type="text/javascript" src="/js/cordova-2.1.0.js"></script>
<script type="text/javascript" src="/js/libs/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="/js/libs/jquery-ui.js"></script>
<script defer src="/js/script.js"></script>

我使用 Cordova 2.1 并在 iPad 模拟器上进行测试 我已经在 externalHosts 中添加了我的外部站点

非常感谢

4

1 回答 1

1

如果您在 onDeviceReady() 之后(或之内)调用外部页面,您只需确保您拥有本地 PhoneGap/Cordova 参考(在远程位置),并且您可以使用 PhoneGap 功能。

例如:

function onDeviceReady()
{

    window.location.href = "http://<myRemoteServer>/myRemoteDefault.htm";
}

myRemoteDefault.htm 将有

<script type="text/javascript" src="./cordova-2.1.0.js"></script>

<script>
        alert(device.platform);
</script>
于 2012-12-06T16:17:49.040 回答