HTML 脚本标签: 类型或语言(或省略两者) ?

<script type="text/javascript">
/* ... */
</script>

对。

<script language="Javascript">
/* ... */
</script>

应该使用哪一个,为什么?

Or, the third alternative: omitting either of these, such as the example code in jQuery's API reference:

<script src="http://code.jquery.com/jquery-latest.js"></script>
123145 次浏览

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列: 未指定必需属性“ type”

因此,如果你是标准的粉丝,就用它吧。它应该没有实际效果,但是,当有疑问的时候,不妨按照规范来做。

类型属性用于定义 HTML 文档中的 MIME 类型。根据所使用的 DOCTYPE,类型值是验证 HTML 文档所必需的。

Language 属性让浏览器知道您使用的是哪种语言(Javascript 还是 VBScript) ,但不一定是必需的,而且 IIRC 已被弃用。

HTML4/XHTML1需要

<script type="...">...</script>

HTML5面临着这样一个事实,即网络上只有一个脚本语言,并允许

<script>...</script>

后者适用于任何支持脚本的浏览器(NN2 +)。