我正在开发一个移动页面应用程序,其中一个页面很长,(这个页面太长了,如果我必须从头到尾查看它,我必须在 Iphone 上滚动 6 次。)
此页面加载后,它会跳跃并稳定下来。或者加载后闪烁,对用户来说非常烦人。
此页面上的数据正在运行时呈现。我有空的 div 元素,我在运行时使用 jquery pageshow 事件填充字段名称和值。
我发现,如果我通过删除一些正在渲染的数据来缩短长度,那么闪烁就会消失, 但我不能这样做
企业不想改变设计,我已经尝试了各种技巧来防止这种闪烁,但现在我已经没有想法了, 我尝试延迟显示页面,直到页面完全加载,但不起作用
请帮忙,有什么解决方案可以防止此页面闪烁吗?
谢谢 艾拉
最佳答案
您所指的称为“闪烁”,这里已有详细记录并询问过几次:
jQuery Mobile blinking at page transitions on iPad
Transitions blink on jQueryMobile pages navigation
https://github.com/jquery/jquery-mobile/issues/4024
我自己在 Android 手机 (v4.0.4) 上使用基于 PhoneGap 构建的应用程序时遇到了同样的问题:切换到/从我的主页(其中包含很长的 data-role="listview"
) 会导致屏幕在执行前闪烁。我的诀窍是将 user-scalable=no
添加到视口(viewport)元标记:
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1" />
尽管其他人通过覆盖 jQuery 移动 CSS 和/或完全禁用页面转换取得了成功:
CSS
.ui-page {
-webkit-backface-visibility: hidden;
}
JS
$(document).bind("mobileinit", function () {
$.mobile.defaultPageTransition = "none";
});
关于jquery手机iphone页面闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13906817/