jquery 如何延迟页面内容的显示,直到页面完全加载,包括脚本和样式

k97glaaz  于 2023-08-04  发布在  jQuery
关注(0)|答案(1)|浏览(118)

我有多个div如下-

<div id='1' class='divs_nav'>My Dynamic Content</div>
<div id='2' class='divs_nav'>My Dynamic Content</div>
...
<div id='149' class='divs_nav'>My Dynamic Content</div>
<div id='150' class='divs_nav'>My Dynamic Content</div>

字符串
div的内容是通过MySQL加载的。我想一次只显示一个div,其余的都隐藏起来。导航按钮用于更新下一个/上一个div的显示。到目前为止,我隐藏了$(document).ready中的所有div,如下所示-

<script>    
$(document).ready(
function() {
var a = 2, max = 150;
while (a <= max)
{
$('#' + a).hide();
a++;
}
});
</script>

**但是,使用此方法的问题是,在页面完全加载之前,所有div都将显示。**一旦加载了所有内容,页面将显示得非常好。
我如何延迟显示或类似的东西,以避免这种情况?此外,如果可能的话,如何显示自定义等待消息“正在加载。请等待”,直到页面加载100%,为观众的意识。

(p.s.我标记html,jquery,JavaScript和PHP,因为老实说,我不知道哪一个这些将是最好的纠正我的问题)

  • 谢谢-谢谢
isr3a4wc

isr3a4wc1#

您可以通过CSS隐藏元素,然后在加载整个页面后显示第一个元素。
关于加载消息,添加一个包含它的元素,一旦页面完全加载,您就可以隐藏(或删除)它。
超文本标记语言:

<div id="loading">Loading, please wait...</div>
<div id='1' class='divs_nav'>My Dynamic Content</div>
<div id='2' class='divs_nav'>My Dynamic Content</div>
<div id='149' class='divs_nav'>My Dynamic Content</div>
<div id='150' class='divs_nav'>My Dynamic Content</div>

字符串
CSS:

.divs_nav {
    display: none;
}


JavaScript:

$(document).ready(function(){
    $('#loading').hide();
    $('.divs_nav').first().css('display', 'block'); //or whatever display value you want
});


DEMO:http://jsfiddle.net/Zzg5M/

相关问题