使用Phonegap编译后,我遇到了Jquery Mobile的问题。
以下是代码段:
function game() {
$.mobile.changePage( "#game", { transition: "slideup"} );
}
<a onclick="game()" data-role="button">Start game</a>
<div data-role="page" id="game" data-theme="a">
...
</div>
当我点击“开始游戏”链接时,它肯定会改变页面,但它会双闪烁。这看起来非常糟糕,我试图摆脱它。我喜欢transision slideup,但我只是希望页面改变而不会看起来像它的双重变化。
任何人都可以提供帮助吗? :)
答案 0 :(得分:2)
在Android上闪烁的Phonegap问题是由于Android版本2.x等性能不佳的平台。我建议你在Android版本上关闭它们。有一些可能的CSS修复,但我从来没有设法在我的代码中正确包含它们。
转换可以像这样关闭:
$(document).bind("mobileinit", function()
{
if (navigator.userAgent.indexOf("Android") != -1)
{
$.mobile.defaultPageTransition = 'none';
$.mobile.defaultDialogTransition = 'none';
}
});
有关Android手机问题的更多信息,请访问:http://jquerymobile.com/blog/2012/01/10/upcoming-releases-1-0-1-1-1-and-beyond/
经过大量的测试和改进后,我们决定使用3D变换功能测试从更复杂的幻灯片,弹出和翻转过渡中排除性能不佳的平台,如Android 2.x,以便这些将回退到所有过渡的默认淡入淡出,以确保顺畅的体验。
答案 1 :(得分:0)
解决方案,感谢Gajotres。
我发现我必须在jquery mobile之前包含转换禁用脚本,这有点奇怪。之后包含它会更合乎逻辑,但它现在有效,并且我很高兴:)
解决方案:
<script src="js/disableTransition.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>