HTML 基础
HTML 高级教程
HTML5 特征
HTML5 示例
HTML5 参考手册

HTML 脚本

在本教程中,您将学习如何在 HTML 文档中包含 JavaScript。

使用客户端脚本

客户端脚本是指由用户的网络浏览器执行的计算机程序类型。 JavaScript (JS) 是网络上最流行的客户端脚本语言。

<script> 元素用于在 HTML 文档中嵌入或引用 JavaScript,以向网页添加交互性并提供显着更好的用户体验。

JavaScript 的一些最常见用途是表单验证、生成警报消息、创建图片库、显示隐藏内容、DOM 操作等等。

向 HTML 页面添加 JavaScript

JavaScript 可以直接嵌入到 HTML 页面中,也可以放置在外部脚本文件中并在 HTML 页面中引用。 两种方法都使用 <script> 元素。

嵌入 JavaScript

要将 JavaScript 嵌入 HTML 文件,只需将代码添加为 <script> 元素的内容。

以下示例中的 JavaScript 将文本字符串写入网页。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Embedding JavaScript</title>
</head>
<body>
    <div id="greet"></div>
    <script>
        document.getElementById("greet").innerHTML = "Hello World!";
    </script>
</body>
</html>

提示: 理想情况下,脚本元素应该放在页面底部,在结束正文标记之前,即 </body>,因为当浏览器遇到脚本时,它会暂停渲染页面的其余部分,直到它解析脚本 这可能会显着影响您的网站性能。


调用外部 JavaScript 文件

您还可以将 JavaScript 代码放入一个单独的文件(带有 .js 扩展名),并通过 <script> 标记的 src 属性在 HTML 文档中调用该文件。

如果您希望同一脚本可用于多个文档,这很有用。 它使您不必一遍又一遍地重复相同的任务,并使您的网站更易于维护。

以下示例演示了如何在 HTML 中链接外部 JS 文件。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Linking External JavaScript</title>
</head>
<body>
    <div id="greet"></div>
    <script src="hello.js"></script>
</body>
</html>

注意:指定 src 属性时,<script>元素必须为空。 这仅仅意味着您不能使用相同的 <script> 元素来嵌入 JavaScript 并链接到 HTML 文档中的外部 JavaScript 文件。

提示: JavaScript 文件是带有 .js 扩展名的普通文本文件,例如"hello.js"。 此外,外部 JavaScript 文件仅包含 JavaScript 语句; 它不包含像嵌入式 JavaScript 那样的 <script>...</script> 元素。


HTML noscript 元素

<noscript> 元素用于为在浏览器中禁用 JavaScript 或浏览器不支持客户端脚本的用户提供替代内容。

此元素可以包含除 <script> 之外的任何 HTML 元素,这些元素可以包含在普通 HTML 页面的 <body> 元素中。 让我们看一个例子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Noscript Demo</title>        
</head>
<body>
    <div id="greet"></div>
    <script>
        document.getElementById("greet").innerHTML = "Hello World!";
    </script>
    <noscript>
        <p>Oops! This website requires a JavaScript-enabled browser.</p>
    </noscript>
</body>
</html>

注意: noscript 元素内的内容只有在用户的浏览器不支持脚本,或者浏览器禁用脚本时才会显示。

Advertisements