0

我正在开发一个 asp.net Web 应用程序。在该应用程序中,我需要在表单body-onload事件之前执行一些 java 脚本。

html标记

<body onload="ShowWait();">
   ......
</body>

我在这里ShowWait();运行body-onload。此脚本显示一个请稍候窗口。但我需要在此事件之前运行此代码。是否有任何事件可以帮助我在页面加载之前运行脚本。

4

4 回答 4

3

鉴于调用了该函数ShowWait(),您不需要“在页面加载之前运行 JavaScript”,但您希望“在页面加载之前显示加载屏幕”

只需将加载元素放入您的 HTML 中,并在页面加载后使用 JavaScript 将其删除。

于 2013-10-18T13:05:09.990 回答
0

将脚本标记放在要运行的脚本的 head 元素中

于 2013-10-18T13:04:39.683 回答
0

为什么不把那行放在脚本标签中作为正文的第一行?它将作为第一件事运行。

于 2013-10-18T13:06:17.283 回答
-1

如果您将 Javascript 语句(而不是函数定义)放在标签内,它们将在页面加载期间执行 - 在触发 onLoad 事件之前。

<html>
 <body>
   <h2>First header</h2>
   <script type="text/javascript">
     alert("Hi, I am here"); 
     document.write("<h3>This is Javascript generated</h3>");
   </script>
   <h2>Second header</h2>
 </body>
 </html>

需要注意的是,您无法按 ID 搜索元素,因为这些元素可能尚未呈现,因此您以这种方式更改页面的能力受到限制。

底线:可能,不推荐。

在这种情况下,我通常会做的事情如下:

Make the parts of the page that may change invisible (via style="visibility:hidden;");
Make onLoad run a Javascript code that changes the page and then sets the visibility of the said parts to visibility:visible.
于 2013-10-18T13:04:54.950 回答