开发 PhoneGap (3.0) Android 应用程序并将 jQueryMobile (1.3.2) 与 jQuery (1.9.1) 集成。
已编辑:根据 jQM 1.3 规范将 jQ 版本更改为 1.9.1。之前使用的是 1.10。但是仍然有同样的问题。
我正在使用以下代码来确保 jQM 和 deviceready 都已触发:
var app = {
deviceReadyDeferred: $.Deferred(),
jqmReadyDeferred: $.Deferred(),
init: function () {
document.addEventListener('deviceready', function () { app.deviceReadyDeferred.resolve(); });
$(document).one("mobileinit", function () {
app.jqmReadyDeferred.resolve();
});
$.when(app.deviceReadyDeferred, app.jqmReadyDeferred).then(app.loaded);
},
loaded: function () {
/* CODE OMITTED: create new page from ajax data, and insert into DOM */
$.mobile.initializePage();
$.mobile.changePage("#pageID");
}
在高于 2.3 的 Android 版本和 iOS 中一切正常。但是,在 Android 2.3/2.2 中,当我到达 时$.mobile.initializePage()
,我得到$.mobile.initializePage
的是'undefined'
. 任何想法为什么这可能会在 Android 2.3 及更低版本中发生?我得到这个mobileinit
事件就好了。我使用的 jQM 和 jQ 版本都表示它们与 Android 2.3 和 2.2 兼容。
感谢您对我的问题的任何帮助和智慧!