嗨,我有一个页面有很多图像,并想知道是否有办法延迟显示这些图像,直到整个页面加载,如加载栏可能,但使用jQuery?任何帮助都会很棒。
答案 0 :(得分:10)
当然,使用jQuery很容易。使用window.load
事件确定何时加载所有图像,然后显示内容:
<html>
<body>
<div id="loading"></div>
<div id="container">
<img src="http://www.playirishlottery.co.uk/wp-content/uploads/image-2.jpg"/>
</div>
</body>
</html>
$(window).load(function() {
//show();
});
function show() {
$('#loading').hide();
$('#container').fadeIn();
};
setTimeout(show, 3000);
在上面的示例中,我使用了setTimeout
来演示。实际上,您删除了这个并取消注释.load
函数
答案 1 :(得分:3)
如果您只想在页面完全加载之前显示内容,则不需要jQuery:http://jsfiddle.net/ErickPetru/g7D8e/。
说明:您的网页内容位于div
display: none
内,另一个div
显示加载消息/ gif。
您需要将</body>
内的所需JS放在<script>
内。这种方式只会在它之前加载JS。
答案 2 :(得分:1)
我刚刚遇到了类似的问题/问题。 由于主页图像轮播中的图像,我的页面加载速度很慢。我的解决方案是异步图像加载。
您将图片标记放在页面中不要填写src。但是把你的src放在一个类标签或其他东西里。使用jquery获取所有src并预加载这些图像并编辑图像,在加载时添加源。这样可以防止页面被图像下载阻止,并加快页面加载速度。
查看http://staticvoid.info/imageLoader/
您也可以尝试延迟加载图片。 (仅在视口内加载图像,滚动到外部时将加载图像)
答案 3 :(得分:0)
只需使用window.onload
即可一旦加载了页面上的所有内容,它就会被触发。不需要JQuery。