我必须为应用程序快速构建原型,并且我想确切地知道在哪里插入各种应用程序逻辑。
在使用 PhoneGap 和 jQueryMobile 时,您能否迭代事件和它们触发的顺序?
对以下事件/顺序有一个清晰的了解会很棒:
- A:当您第一次打开应用程序时。
- B:当你换页的时候(我猜有些事件不会再有了)。
- C:当您“最小化”应用程序时(例如:当您单击应用程序中的链接以发送短信/通话时,或者您只需按下设备的主页按钮)。
- D:当您恢复应用程序时(例如:点击“返回”按钮,或者只是
以某种方式“最大化”它)。
我必须为应用程序快速构建原型,并且我想确切地知道在哪里插入各种应用程序逻辑。
在使用 PhoneGap 和 jQueryMobile 时,您能否迭代事件和它们触发的顺序?
对以下事件/顺序有一个清晰的了解会很棒:
在这里找到的所有信息也可以在我的博客文章中找到,您还可以找到工作示例。
A1 - 使用deviceReady事件初始化 Phonegap 应用程序/框架。
例子:
document.addEventListener("deviceReady", yourCallbackFunction, false);
function deviceReady() {
}
更多关于暂停甚至可以在这里找到:http: //docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html
A2 - 使用mobileinit事件初始化 jQuery Mobile 应用程序/框架。
例子:
$(document).on("mobileinit", function () {
});
如何检查两个框架是否成功加载:https ://stackoverflow.com/a/12821151/1848600
首先可以在这里找到所有事件:http: //jquerymobile.com/test/docs/api/events.html
假设我们有一个页面 A 和一个页面 B,这是一个卸载/加载顺序:
1. page B - event pagebeforecreate
2. page B - event pagecreate
3. page B - event pageinit
4. page A - event pagebeforehide
5. page B - event pagebeforeshow
6. page A - event pageremove
7. page A - event pagehide
8. page B - event pageshow
Phonegap 通过暂停事件来处理这个问题。
例子:
document.addEventListener("pause", yourCallbackFunction, false);
更多关于暂停甚至可以在这里找到:http: //docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html
Phonegap 通过恢复事件来处理这个问题。
例子:
document.addEventListener("resume", yourCallbackFunction, false);
更多关于暂停甚至可以在这里找到:http: //docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html
几乎没有其他 phonegap 和 jQM 事件,您可以在上面提到的链接中找到它们。
你不应该在 jQM 应用程序中使用的东西:
$(document).ready(function(){
});
原因:
在 jQuery 中学习的第一件事是调用 $(document).ready() 函数中的代码,以便在加载 DOM 后立即执行所有内容。但是,在 jQuery Mobile 中,Ajax 用于在您导航时将每个页面的内容加载到 DOM 中,并且 DOM 就绪处理程序仅针对第一页执行。要在加载和创建新页面时执行代码,您可以绑定到 pageinit 事件。此事件在本页底部有详细说明。