2011-05-13 153 views
4

我遇到了问题。我正在研究一个CMS,它的名字是Dolphin。用几句话来说,我创建了一个包含大量代码的块(jQuery,JavaScript,PHP,HTML,图像...等)。 我想要做的是显示一个加载图像,直到该块的内容被完全加载。所以即使看起来很奇怪,我也需要DIV的预加载函数。我需要这样做,因为如果我不使用它,我可以看到div的构成缓慢,这很糟糕。你知道一个很好的jQuery或JavaScript函数可以帮助我吗?只需在DIV中心加载一个图像,直至其内容完全加载完毕。只要它被加载,它就会显示出来。谢谢!预加载图像加载的DIV

+0

你能发表一些HTML吗? – 2011-05-13 22:22:53

回答

6

诀窍是将真正的div设置为默认隐藏,并在其上面放置“Please wait”div。在繁重的编码结尾添加一行隐藏“Please wait”div并显示真正的div。对于所需的HTML

示例代码:

<div id="pnlPleaseWait"> 
    Loading please wait... 
<div> 
<div id="pnlMain" style="display: none;"> 
    ....heavy stuff going on here... 
    ....heavy stuff going on here... 
    ....heavy stuff going on here... 
</div> 

而且在繁重的处理结束了jQuery线:

$("#pnlPleaseWait").hide(); 
$("#pnlMain").show(); 
+1

是否将图像加载到具有'display:none'的块中?如果他们不能将其定位在屏幕外并在完成时更改位置。 – jeroen 2011-05-13 22:34:11

+0

@ jeroen好问题!猜猜简单的图像预加载(例如'var img = new Image(); img.src =“myImage.jpg”;'是安全的方法。:-) – 2011-05-13 22:42:01