2009-07-02 69 views
0

我有一个正在处理的网站。我正在使用jQuery来动画和显示内容。该内容存储在变量中。我需要知道如何在显示内容之前加载内容。如何在JavaScript中预加载html var

为了说明起见,您单击一个链接,“加载...”窗口淡入,一旦它加载所有内容,它就会淡出并淡入存储在变量中的加载内容。

谢谢

+1

嗯,一个Ajax请求?这是一个相当模糊的问题... – annakata 2009-07-02 08:09:30

+0

雅,你问如何使用AJAX?或者是其他东西? – seanmonstar 2009-07-02 08:13:39

回答

0

您是否在寻找如何通过Ajax请求HTML内容,知道什么时候结束,然后将其插入到DOM?如果是这样,jQuery的load方法可能就是你所追求的。

史蒂夫

0

AJAX事件不会告诉你的是百分之多少装,其实,在大多数情况下,它根本不知道响应将是多久。但它会在响应完成或错误发生时通知您。

看看官方参考AJAX of JQuery。我原来的回答是错误的,因为我想你已经有了这些数据。简化使用情况为您Ajax请求是:

> Initiate the Request, and set the handler for ajax complete (thru something like $.Ajax) 
> Hide the content pane and show the loader 
> When ajax complete, you display your content, and hide the loader 

以下是原文的答案。


我想你所谈论的东西是已经在客户端计算机的内存,但你要立即显示所有一旦它完成加载。听起来就像离线媒体中的“双缓冲”。

你可以做的是:

// Display the loading screen, you can put any animation 
$("#loader").fadeIn(); 
$("#contentPlaceHolder").hide(); 
// attach the DOM of the contents to placeholder. 
$("#contentPlaceHolder").append(CONTENTS); 
// .... similar statements follows. 
// and finally.. 
$("#contentPlaceHolder").show(); 
$("#loader").fadeOut();