【发布时间】:2013-06-12 18:42:40
【问题描述】:
我正在使用以下方法来预加载我网站的内容:
$(window).load(function(){
$('#preLoader').hide();
$('#container').show();
});
现在我的#container div 包含了我所有的网站内容。在我的身体背景图像完全加载之前,我不希望它显示出来......所以当背景图像被加载时,#preLoader div 会显示一个动画加载器 gif。
问题:
由于包含资源的服务器不可用,某些元素并不总是加载(例如 gravatars)......所以$(window).load() 函数永远不会执行,因为页面尚未完成加载 - 它卡在尝试下载不可用的资源并一直显示加载器。
如何忽略响应时间过长的请求,以便我的加载函数可以执行 - 隐藏加载程序并显示内容。
我不想使用$(document).ready() 函数,因为它不会等到我的背景图片完成加载...
【问题讨论】:
-
如何仅对特定背景图像元素而不是窗口使用加载事件。
$('#divcontainingbackgournimage').load(function(){.. -
是的,但是如果您有许多其他元素要在显示内容之前完成加载...?那么单独针对他们的唯一方法是什么?
-
@bipen DIV 没有加载事件,即使设置了任何背景图像