<div id='loading' align='center' style='position:relative; background: #f2f2f2; color:#99FF66; border: solid 3px #FF9900; width: 150px; height: 53px; left: 240px; top: 50px; background-color: #FFFFCC; visibility: visible;'><br><font color='0000FF'>请稍候,正在加载……</font></div>以上的DIV无论是放在<head>的js代码中直接使用document.write()
还是将其属性设置为可视并放在body内
最后在<body onload="">中写代码将其设置不可见以上两种方式在请求页面时不管页面要等待多久,div加载... 都看不到,若我在onload的function中的第一句中
加入alert()则在点击确定之前一直都可用看到DIV层.我的结论就是: div层的内容是和返回的请求内容一并产生的,并没有先产生DIV层,而直到真正的请求内容返回之前一刻消失我想达到的效果是: 发生请求时立马显示div加载... 直到请求内容返回之前一刻消失请大家指点,有没有好的方法 ???
还是将其属性设置为可视并放在body内
最后在<body onload="">中写代码将其设置不可见以上两种方式在请求页面时不管页面要等待多久,div加载... 都看不到,若我在onload的function中的第一句中
加入alert()则在点击确定之前一直都可用看到DIV层.我的结论就是: div层的内容是和返回的请求内容一并产生的,并没有先产生DIV层,而直到真正的请求内容返回之前一刻消失我想达到的效果是: 发生请求时立马显示div加载... 直到请求内容返回之前一刻消失请大家指点,有没有好的方法 ???
想达到效果逻辑是这样的:
先设置DIV内容“正在加载...”并显示该DIV,再发送AJAX请求,等到AJAX返回结果时,隐藏加载DIV框,顺序性很强;如果,AJAX返回的结果速度很慢看到效果很清楚
前提是普通页面请求
简单的function ShowTips() {
window.setTimeout(function() { document.getElementById("Result").innerHTML="请稍后...";}, 5000)
}
<div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" OnClientClick="ShowTips()"/>
</div>
<div id="Result" runat=server>
</div>
System.Threading.Thread.Sleep(10000);
Result.InnerHtml = "加载完毕!";