两个不同版本的.一个是javascript,一个C#的.记得以前的贴子还写过一个FLASH的,如果需要,请查找
原理.利用WEB页面的onLoad方法.使加载完后的内容显示.
javascript版本:
<script type="text/javascript">
window.οnlοad=function()
{
objLoad = document.getElementById('divLoad');
objLoad.style.display='none';
objTree = document.getElementById('divTree');
objTree.style.display='block';
}
</script>
<div id="divLoad">
<img src="img/loading.gif" />
正在加载......
</div>
<div id="divTree" style="display:none;">
内容......................
</div>
C#版本:
using System;
/// <summary>
/// Loading 加载条类
///
/// 调用方法(在Page_Load里):
/// LoadingControl.Loading objLoad = new LoadingControl.Loading( this,"Images/loading.gif" );
/// objLoad.Load();
/// 或:
/// LoadingControl.Loading objLoad = new LoadingControl.Loading( );
/// objLoad.Page = this;
/// objLoad.ImageMapth = "Images/loading.gif";
/// objLoad.Load();
/// </summary>
public class Loading
{
private System.Web.UI.Page Sender;
private string strImagePath;
public Loading()
{
}
public object Page
{
get
{
return Sender;
}
set
{
Sender = (System.Web.UI.Page)value;
}
}
public string ImageMapth
{
get
{
return strImagePath;
}
set
{
strImagePath = value;
}
}
public Loading(object sender)
{
Page = sender;
}
public Loading(object sender, string ImageMapth)
{
Page = sender;
this.strImagePath = ImageMapth;
}
/// <summary>
/// Load script to page
/// </summary>
public void Load()
{
if (!this.Sender.IsClientScriptBlockRegistered("startScript"))
{
this.Sender.RegisterClientScriptBlock("startScript", this.Start());
this.Sender.RegisterStartupScript("endScript", this.End());
}
}
/// <summary>
/// Script start.
/// </summary>
/// <returns></returns>
private string Start()
{
string strStyle = "BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none";
System.Text.StringBuilder strScript = new System.Text.StringBuilder();
strScript.Append("<div id=/"loading/">");
strScript.Append("<table width=/"100%/" height=/"100%/" border=/"0/" cellpadding=/"0/" cellspacing=/"0/" style=/"" + strStyle + "/">");
strScript.Append("<tr style=/"" + strStyle + "/" ><td width=/"100%/" height=/"100%/" align=/"center/" valign=/"middle/" style=/"" + strStyle + "/">");
strScript.Append("<img src=/"" + this.ImageMapth + "/" border=/"0/">");
strScript.Append("</td></tr>");
strScript.Append("</table></div>");
return strScript.ToString();
}
/// <summary>
/// Script end.
/// </summary>
/// <returns></returns>
private string End()
{
System.Text.StringBuilder strScript = new System.Text.StringBuilder();
strScript.Append("<script language=/"javascript/">");
strScript.Append("window.document.getElementById(/"loading/").style.display = /"none/";");
strScript.Append("</script>");
return strScript.ToString();
}
}