2

Im having a problem with Jquery Mobile after compiling it with Phonegap.

Here is a code snippet:

function game() {
    $.mobile.changePage( "#game", { transition: "slideup"} );
}

Page 1:

<a onclick="game()" data-role="button">Start game</a>

Page2:

<div data-role="page" id="game" data-theme="a">
   ... 
</div>

When i click the link "Start Game" it sure does change the page, but it double blinks. This looks very bad, and im trying to get rid of it. I like the transision slideup, but i just want the page to change without it looking like its double changing.

Anyone able to help? :)

4

2 回答 2

2

在 Android 上闪烁的 Phonegap 问题是由于 Android 2.x 等平台性能不佳。我建议您在该 android 版本上关闭它们。有一些可能的 css 修复,但我从未设法将它们正确地包含在我的代码中。

可以像这样关闭转换:

$(document).bind("mobileinit", function()
{
    if (navigator.userAgent.indexOf("Android") != -1)
    {
        $.mobile.defaultPageTransition = 'none';
        $.mobile.defaultDialogTransition = 'none';
    }
});

更多关于安卓手机问题的信息可以在这里找到:http: //jquerymobile.com/blog/2012/01/10/upcoming-releases-1-0-1-1-1-and-beyond/

经过大量测试和改进后,我们决定使用 3D 转换功能测试,将 Android 2.x 等性能不佳的平台从更复杂的幻灯片、弹出和翻转过渡中排除,因此这些将回退到默认值淡入淡出所有过渡以确保流畅的体验。

于 2012-12-05T14:18:52.270 回答
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>
于 2012-12-06T10:07:40.027 回答