我是javascript / jquery世界的新手。

我试图显示一个加载图像,直到页面加载完成。我不知道我要去哪里错了。我已经阅读了很多与此相关的文章,但是我的图像和脚本都无法正常工作。请在下面查看我的标记。我已经尝试使用response.write(html字符串)和response.flush进行排序,并且可以工作,但是我随后在response.redirect遇到了一个主要问题,因为已经发送了标头作为flush导致html缓冲区被刷新了。我在脚本标签中使用了与以下代码相同的代码,只是其中没有window.load位。这是由于我将我的response.write和flush放在页面事件init和预渲染中。

<!DOCTYPE html>
<html lang="en">
<head runat="server">
    <meta charset="utf-8" />
    <title><%: Page.Title %> - InfoCentre MI TEST VERSION</title>
    <asp:PlaceHolder runat="server">
        <%: Scripts.Render("~/bundles/modernizr") %>
    </asp:PlaceHolder>
    <webopt:BundleReference runat="server" Path="~/Content/css" />
    <link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
    <meta name="viewport" content="width=device-width" />
    <asp:ContentPlaceHolder runat="server" ID="HeadContent" />
    <script type="text/javascript">
        $(window).load = function () {
            var elem = document.getElementById("dvLoading");
            elem.parentNode.removeChild(elem);
            }
    </script>
</head>
<body>
    <div id="dvLoading" style="text-align:right;">
        <img id="imgLoading" src="Images/loading4.gif" width="100" height="100" alt="LoadingImage" />
    </div>
    <form runat="server">
</body>

最佳答案

试试这个:窗口加载后隐藏图像

<script type="text/javascript">
        $(window).load(function () {
            $("#dvLoading").hide();
            });
    </script>


注意-确保在上述脚本之前添加了jquery库。如果不是,则在<script>标记之前添加以下行

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
 <script type="text/javascript">
     $(window).load(function () {
          $("#dvLoading").hide();
      });
 </script>


有关负载事件的更多信息-jQuery load

09-10 08:30
查看更多