0

当我通过正常请求加载大内容时,有什么方法可以显示加载图像(如 ajax 加载 gif)?

我没有 ajax 请求,但有一个简单的 asp.net 回发。我有一个包含成百上千个元素的大型网站。因此,页面需要 4-10 秒才能完全加载,因此页面是白页,在渲染之前不会显示任何元素。也许显示了一些元素,但浏览器仍在渲染。

是否有任何机会不使用 ajax 等来显示加载图像?互联网浏览器优先。


(来源:kuka-robotics.com

4

2 回答 2

0

将此脚本添加到您的代码中,并在加载正文标记时调用 init() 函数。

   <script type="text/javascript">
     var ld=(document.all);
      var ns4=document.layers;
     var ns6=document.getElementById&&!document.all;
     var ie4=document.all;
      if (ns4)
        ld=document.loading;
     else if (ns6)
        ld=document.getElementById("loading").style;
     else if (ie4)
        ld=document.all.loading.style;
      function init()
     {
     if(ns4){ld.visibility="hidden";}
     else if (ns6||ie4) ld.display="none";
     }
     </script>

并且加载body标签调用Init();

<body style="background-color:#FFFFFF;" onLoad="init()">
<div id="loading" style="position:absolute; width:200px; height:163px; text-align:center;top:310px; left:487px;">
<img src="load.gif" border=0 /></div>

....

..
</body>

让我知道它是否适合你。

一切顺利。

于 2013-02-19T10:03:36.390 回答
0

您可以创建两个容器:

  • 带有加载图像的容器,从开始时可见并在页面加载完成时隐藏
  • 包含内容的容器,从一开始就隐藏并在页面加载完成时显示

您可以使用 javascript 使容器在页面加载完成时可见。

例如:

<div id="loading_container">
     <img src="http://www.kuka-robotics.com/res/icn/ajax_loader.gif" />
</div>
<div id="main_container" style="display:none">
     <!-- your content here -->
</div>
<script type="text/javascript">
      window.onload=function(){
         document.getElementById("loading_container").style.display = 'none';
         document.getElementById("main_container").style.display = 'block';
      };
</script>
于 2013-02-19T10:04:12.000 回答