我试图定义在Android应用程序中为 PhoneGap 和 jQuery Mobile 注册初始化事件的正确方法(类似于jQuery风格)。
在研究文档后,我得出了以下结论:
$('#index-page').live('pageinit', function () { // <-- fires
$(document).bind('deviceready', function () { // <-- !fires
// ...
});
});
“外层”事件(pageinit
)触发,而“内层”事件(deviceready
)没有触发......
尽管这种类型的事件注册完美无缺:
window.addEventListener('load', function () {
document.addEventListener('deviceready', function () {
// ...
}, false);
}, false);
有人能解释一下第一种事件注册方式有什么问题吗?哪种方式更好?
先决条件:
- PhoneGap v1.2
- jQuery Mobile v1.0rc2
- Eclipse v3.7.1
yourModule.yourInitMethod();
。 - Paranoid Android