Made an account to reply to this.
I was experiencing the same thing; amplified by the new 1.1.0 release: Animations were fine normally, but once saved as a web app and run in full screen, flickers and screen flashes were very apparent. Again - when run in safari there seemed no issue.
I first toyed with the view port. Removing the device-width call fixed the issue, but messed up the sites display and bounds. It did tell me though it it seems a similar issue to full-screen animations in css3. Attempted -webkit-backface-visibility, -webkit-perspective changes and translate3D on elements, wrappers, everything ... nothing worked.
I then dug in the the JQMobile code. Using the dev version, line 2241 begins the 'startIn' function; used to move the target page in to view. This seemed to be the most problematic. Removing items systematically led me to the page size functions (height and scroll position). Rearranging the first four items there seemed to actually fix/workaround the matter for me; and as of yet has reveled any negative side effects.
Originally:
- $to.addClass( $.mobile.activePageClass );
- // Send focus to page as it is now display: block
- $.mobile.focusPage( $to );
- // Set to page height
- $to.height( screenHeight + toScroll );
- scrollPage();
Now:
- // Set to page height
- $to.height( screenHeight + toScroll );
-
- scrollPage();
- $to.addClass( $.mobile.activePageClass );
- // Send focus to page as it is now display: block
- $.mobile.focusPage( $to );
I can only assume the prepping the page before animations are applied (via height and scroll) allows the animation to properly know where its starting point is.
Let me know if this pans out for you. So far its seemed to check out on iOS5 iPhone and iPad.