<script type="text/javascript">
/* ... */
</script>
对比
<script language="Javascript">
/* ... */
</script>
应该使用哪个,为什么?
或者,第三种选择:省略其中任何一个,例如 jQuery 的 API 参考中的示例代码:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
/* ... */
</script>
对比
<script language="Javascript">
/* ... */
</script>
应该使用哪个,为什么?
或者,第三种选择:省略其中任何一个,例如 jQuery 的 API 参考中的示例代码:
<script src="http://code.jquery.com/jquery-latest.js"></script>
该language
属性已被弃用很长时间,不应使用。
当 W3C 在研究 HTML5 时,他们发现所有浏览器都将“text/javascript”作为默认脚本type
,因此他们将其标准化为默认值。因此,您也不需要type
。
对于 XHTML 1.0 或 HTML 4.01 中的页面,省略type
被认为是无效的。尝试验证以下内容:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://example.com/test.js"></script>
</head>
<body/>
</html>
您将被告知以下错误:
第 4 行,第 41 列:未指定必需的属性“类型”
因此,如果您喜欢标准,请使用它。它应该没有实际效果,但是,如果有疑问,也可以按照规范进行。
HTML4/XHTML1 需要
<script type="...">...</script>
HTML5 面临网络上只有一种脚本语言的事实,并允许
<script>...</script>
后者适用于任何支持脚本 (NN2+) 的浏览器。
该类型属性被用来定义在HTML文档中的MIME类型。根据您使用的 DOCTYPE,需要类型值才能验证 HTML 文档。
语言属性让浏览器知道您使用的是什么语言(Javascript 与 VBScript),但它不一定是必需的,而且 IIRC 已被弃用。