2013-02-19 151 views
4

在我的jQuery Mobile网站主页的第一次加载,似乎是1秒之前,由jQuery Mobile处理,然后页面变为空白1秒,然后,页面的最终呈现完成,让最后一页出现。它提供了一种我想避免的眨眼效果,尤其是因为例如jQuery Mobile需要解析的所有元素在第一秒期间都是可见的(例如,popup不隐藏等)。隐藏jQuery移动页面第一次加载,直到完全加载

我尝试过与其他基于jQuery Mobile的网站,他们似乎没有这个问题。有配置什么的? 如果不是这种情况,我想隐藏该页面直到完全加载。

提前致谢。

回答

0

这就是我所做的,但它不适合谁禁用JS的人。 所以我也这么做,但是我通过javascript在开启body标签后隐藏了body。

<body> 
    <script type="text/javascript"> 
document.body.style.display = 'none'; 
</script> 
... 
</body> 
+3

'display:none'可能会阻止某些JS工作,尤其是在您尝试测量大小时。使用'visibility:hidden'可能是更好的选择。 – 2013-11-10 22:57:28

+0

的确如此。在我的情况下,我不使用JS的尺寸,所以我没有面临任何问题,但“可见性:隐藏”绝对是一个很好的选择。 – Kalvn 2014-07-16 14:53:23

4

您可以在主体上使用display none,然后在第一页上绑定pageinit的事件侦听器。

例子:

HTML:

<body style="display:none"> 
<div id="#start" data-role="page"></div> 
</body> 

JS:

$("#start").one("pageinit",function(){ 
    $("body").show(); 
}); 
相关问题