我看到这已被讨论多年,但它仍在发生。
我有一个在iOS中使用jQuery Mobile的应用程序,一切都很好。我现在正试图部署到Android,但页面转换上有一个可怕的闪烁。我尝试过在网上提出的许多解决方案,但都没有工作。我发现的唯一工作就是关闭jQuery Mobile,我不想这样做!
我试过了:
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
和
.ui-page {
text-shadow: none!important;
-webkit-backface-visibility: hidden;
overflow: visible;
}
和
.ui-mobile-viewport-transitioning,
.ui-mobile-viewport-transitioning .ui-page {
overflow: visible;
}
和
<script type="text/javascript">
$(document).bind("mobileinit", function()
{
if (navigator.userAgent.indexOf("Android") != -1)
{
$.mobile.defaultPageTransition = 'none';
$.mobile.defaultDialogTransition = 'none';
}
});
</script>
并将其添加到Android清单
android:hardwareAccelerated="false"
可能还有其他我不记得了。
我正在使用jQuery Mobile 1.4.5。科尔多瓦6.3.1。在运行Android 6.0.1的Nexus 5和运行5.0的LG G3上进行测试。
jQuery Mobile github页面上存在一个未解决的问题,但一年多来没有人回答。
任何想法都将不胜感激!
答案 0 :(得分:0)
想出来。我的代码中有一些window.location页面转换。当我更改它们以使用$ .mobile.changePage(页面)并确保我有
$.mobile.defaultPageTransition = 'none';
$.mobile.defaultDialogTransition = 'none';
不再闪烁!