【发布时间】:2011-03-03 21:56:13
【问题描述】:
大家好
我在波纹铬扩展phonegap模拟器中没有正确触发初始phonegap'deviceready'事件处理程序的一些问题。
<script src="xui-2.0.0.js" type="text/javascript" charset="utf-8"></script>
<script src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<!--
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" />
<script src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script>
-->
<script type="text/javascript" charset="utf-8" src="phonegap.0.9.4.js"></script>
<!-- <script type="text/javascript" charset="utf-8" src="main.js"></script> -->
<script>
function onLoad() {
//console.log(document);
/*document.addEventListener('deviceready',function() {
console.log('PHONEGAP_READY');
},false);*/
console.log('ON_LOAD');
x$(document).on('deviceready', function() {
console.log('PHONEGAP_READY');
}, false);
}
</script>
所以问题是 console.log('PHONEGAP_READY') 永远不会运行。我在这里使用 XUI 只是为了尝试官方波纹 phonegap 演示的工作方式(发布在他们的页面上)。既不是那个,也不是 document.addEventListener(),工作......奇怪的是,chrome 控制台输出显示为“PhoneGap :: 触发 deviceready 事件!”所以我假设事件确实正在触发,但事件处理程序本身没有被调用......
任何线索表示赞赏
谢谢
【问题讨论】:
-
嗨 Deepblue,你什么时候调用你的 onload 函数?在调用该函数之前,您不会设置处理程序。
-
为了简洁起见,我从这里的列表中省略了它。我在
-
对不起,我无法回答 - 只是想补充一下,我遇到了同样的问题,所以我开始了一个没有自己的 Java 或 js 的新 Eclipse 项目,按照 quickstart-HelloWorld 说明这封信和我得到相同的结果,部署到 DROIDX。 Logcat 中没有错误消息,但永远不会调用“deviceready”事件处理程序。也许它与覆盖 document.addEventListener 有关?
-
@Brandon - 是的,在 phonegap.0.9.4.js 中 document.addEventListener 在第 338 行被覆盖......正如你所说,它可能与此有关。请注意,在这种情况下,我在 chrome/ripple 中运行东西,因此不涉及 Eclipse/android 打包...
标签: cordova