6

我有一个使用PhoneGap 转换为iOS 应用程序的jQuery Mobile 应用程序。我正在使用 jQM 1.1.0 版。

我在页面之间使用“淡入淡出”过渡(因为我读到它们要求不高)。

最初在 iPhone 模拟器中运行应用程序的 PhoneGap 版本时,我在每次页面转换后都会出现闪烁/闪烁 - 好像页面正在显示、清除然后重新显示 - 所有这些都只用了几分之一秒。当我在设备上运行它时发生了一些事情。

我将 Sarah-Jane 对类似问题的回答中的建议应用了。

这解决了模拟器中的问题,但没有解决实际设备上的问题。

有没有人遇到过这个问题,并找到了解决方案?

4

4 回答 4

12

这个人解决了这个问题 - 它对我有用:

http://outof.me/fixing-flickers-jumps-of-jquery-mobile-transitions-in-phonegap-apps/

CSS:

body {
    /* Setting body margins to 0 to have proper positioning of #container div */
    margin: 0;
}

/* #container div with absolute position and 100% width and height so it takes up whole window */
#container {
    position: absolute;
    width: 100%;
    height: 100%;
}

JS:

$(document).one("mobileinit", function () {

    // Setting #container div as a jqm pageContainer
    $.mobile.pageContainer = $('#container');

    // Setting default page transition to slide
    $.mobile.defaultPageTransition = 'slide';

});

并将所有 jQM 页面包装在一个单一的<div id="container">

于 2012-10-05T15:56:23.780 回答
1

淡入淡出过渡闪烁主要是您应该将其更改为滑动或其他一些过渡模式。

于 2012-05-05T11:52:27.317 回答
0

这可能会有所帮助

<meta name="viewport" content="width=device-width, user-scalable=no" />
于 2013-08-18T10:41:30.983 回答
-1

使用以下代码

$(document).ready(function() 
{ 

    $.mobile.defaultPageTransition = "none"
    $.mobile.defaultDialogTransition = 'none';
    $.mobile.useFastClick = true; 
    $.mobile.touchOverflowEnabled = true;

});
于 2013-02-10T15:31:57.660 回答