Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax PhoneGap/Android应用程序上的空白屏幕_Ajax_Jquery_Jquery Mobile_Cordova - Fatal编程技术网

Ajax PhoneGap/Android应用程序上的空白屏幕

Ajax PhoneGap/Android应用程序上的空白屏幕,ajax,jquery,jquery-mobile,cordova,Ajax,Jquery,Jquery Mobile,Cordova,我正在与Phonegap Android应用程序搏斗。我正在使用jQueryMobile 1.3.1和jQuery1.9.1以及PhoneGap2.9.0。我的index.html中有一些数据角色页面,我正在使用ajax函数动态生成一些其他页面。问题是,在显示动态生成的页面后,屏幕总是变成白色。如果我在index.html中静态创建的页面之间导航,就不会发生这种情况 有什么建议吗?我试过:

我正在与Phonegap Android应用程序搏斗。我正在使用jQueryMobile 1.3.1和jQuery1.9.1以及PhoneGap2.9.0。我的index.html中有一些数据角色页面,我正在使用ajax函数动态生成一些其他页面。问题是,在显示动态生成的页面后,屏幕总是变成白色。如果我在index.html中静态创建的页面之间导航,就不会发生这种情况

有什么建议吗?我试过:

  • CSS:.ui页面{ -webkit转换:translateZ(0); -webkit透视图:1000; -webkit背面可见性:隐藏; -msie背面可见性:隐藏; -ms背面可见性:隐藏; }

  • defaultPageTransition=“无”


新页面是使用Mustache.js创建的

快速尝试的方法是在jQuery Mobile中全局启用DOM缓存:

$.mobile.page.prototype.options.domCache = true;

我想说,它源于一个不包含动态生成的标记的给定页面,为了利用jQM的ajax导航,您需要动态生成标记。。。它使用自己的内部历史跟踪对象为hashchange和/或popstate事件提供燃料

除此之外,我将逐步介绍动态页面实际上是如何添加到DOM的。您应该能够继续使用Mustache的模板插件,但必须确保使用jQM将标记添加到DOM中。(或者经历一个可能很长的创建覆盖的过程……如果可能的话,我认为您应该避免。)

当您使用jQM更新DOM时,它确保以正确的顺序触发正确的事件,从而使应用程序数据/状态保持最新

我肯定您正在使用文档,但我会再看一眼。可能会让您更好地了解您需要停止使用或扩展/覆盖的Mustache方法

希望这有帮助

jQM参考资料

DOM缓存:

导航事件:

动态页面加载:


是否使用
.ajax()
.load()
调用外部页面?是的,.ajax()具有beforeSend和success回调函数。因此,请检查创建的页面。。。也许你发现了一些错误!你能创建一个JSFIDLE吗?更好的方法是在skype上添加我:PabloR。Nunes@JonZangitu,你弄明白了吗?
pageContainerElement.page({ domCache: true });