javascript - 为什么这个 JavaScript 只在 Opera 中执行?

标签 javascript html

我正在尝试构建一个将 HTML 表示与 JavaScript 行为完全分开的网站。

为了获得这方面的经验,我创建了一个简单的“Hello, world!”具有一页和一种行为的网站。该页面包含一个“Hello, world!”消息,JavaScript 通过警告框向用户显示类似的消息。

为了实现这一点,我在我的本地机器上创建了两个文件,名为 index.html 和 sayhello.js。

HTML 文件 index.html 包含以下内容:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8"/>
    <title>Hello, world!</title>
  </head>
  <body>
    <h1>Helo, world!</h1>
    <p>That's all for now.</p>

    <script type="text/javascript" src="sayhello.js"/>
  </body>
</html>

JavaScript 文件 sayhello.js 包含以下内容:

alert('Hello, world!');

我的操作系统是 Windows 7。

我在 Opera 11 中打开 index.html 并看到“Hello, world!”页面打开后立即弹出对话框。

在 Firefox 4、Chrome 11 和 IE 9 中,我看不到弹出窗口。就好像 JavaScript 被忽略了一样。

为什么警告框不会在所有浏览器中显示?我该怎么做才能让它显示出来?

最佳答案

<script>标签不是自动关闭的。你需要写

<script type="text/javascript" src="sayhello.js"></script>

关于javascript - 为什么这个 JavaScript 只在 Opera 中执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6266062/

相关文章:

javascript - 我应该向这个 JavaScript 函数传递什么参数?

javascript - "Add To Pocket"作为文本而不是图像

html - 给定一个容器中的图像大小的 div 高度,flexbox 可以自动计算第二个 div 高度来填充容器吗?

javascript - 如何在 HTML 文件中使用 svg 突出显示整个 map ?

javascript - AngularJS 首先在 p 标签中显示默认 html,但随输入而变化

javascript - mapbox LineString 跟随道路

javascript - 设置 Dijit.Form.Textarea 的值

php - 如何将 CSS 应用于另一个窗口中生成的表格?

javascript - 使用 JQuery UI 拖放以填充空白

javascript - 将秒表时间转换为秒