0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">alert("Hola amigo")</script>
</head>
<body>

 --I still want to see the following-- >>
<p>Lorem ipsum</p>

</body>
</html>

为什么它会终止接下来的一切?我想如果你把它放在里面就不会了<head>。我不喜欢将它放在底部(在 /html 之后)。有什么问题?

4

6 回答 6

5

您可能想要做的是将它定义为一个函数,然后从 body 标记的 onLoad 属性调用该函数。(或者首先将您的警报调用放在 onLoad 属性中。)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function foo() {
    alert("Hola amigo");
}
</script>
</head>
<body onLoad="javascript:foo()">

 --I still want to see the following-- >>
<p>Lorem ipsum</p>

</body>
</html>
于 2009-08-31T06:39:18.240 回答
3

发生这种情况是因为警报在解析头部时立即执行,警报阻止解析,因此尚未加载主体的内容。

加载窗口时执行警报(window.onload事件):

window.onload = function () {
  alert("Hola amigo");
}
于 2009-08-31T06:40:48.203 回答
2

alert() 阻塞 UI 线程(换句话说 - 它是模态的),直到用户确认对话框。在对话框关闭之前,页面上不应该发生任何事情。

于 2009-08-31T06:41:08.220 回答
0

我将 HTML 粘贴到页面中,并且可以在警报后看到 HTML。您使用的是哪个浏览器?

于 2009-08-31T06:39:54.510 回答
0

Java 脚本是一种解释器语言,换句话说就是读取脚本或逐行执行脚本。因此,在您的情况下,当涉及到警报时[这是模型窗口:禁用其后面的所有内容以防止任何用户操作]。它等待用户操作,然后它才会读取进一步的脚本 rty

于 2009-08-31T06:43:23.083 回答
0

试试这个:

<script type="text/javascript"> //<![CDATA[ //Javascript Alert alert("Put your message here"); //]]> </script>

你把它放在哪里都没关系。但是,如果您希望它首先出现,请将其放在脚本的顶部和底部以最后出现

于 2009-10-10T21:33:56.020 回答