为什么javascript标签使用“text”?

时间:2011-06-09 10:58:41

标签: javascript mime-types

每当我们编写一个javascript时,这就是我们声明的方式 -

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

但我不明白为什么它被声明为 文本

6 个答案:

答案 0 :(得分:3)

因为它是纯文本而不是图像/或应用程序/然而它可能是应用程序,但没有人使用它,IE将失败

因为文本是以前的版本而某些浏览器如果我们更改它会失败,你应该保留text / javascript。现在自从HTML5被删除以来,自从默认的IS javascript以来,很多SO人主张简单地删除它。这可能会在某些DOCTYPES

中产生验证错误
<script>
alert("UNLESS this is IE and there is a VBScript as the first script on the page,"+
  "this WILL be JavaScript in all known browsers");
</script>

这也是不使用onclick =“ javascript: something()”的一个很好的理由,除非您使用某些IDE并希望快速找到您的内联处理程序

What is the javascript MIME type for the type attribute of a script tag?

指向Specifying the scripting language

的链接

答案 1 :(得分:3)

type = content-type:

  

此属性指定元素内容的脚本语言,并覆盖默认脚本语言。脚本语言被指定为内容类型(例如,“text / javascript”)。作者必须为此属性提供值。此属性没有默认值。

参考:w3

答案 2 :(得分:3)

因为它是。 Javascript源代码是文本。该谓词将确定数据的传输方式。然后,文本类型(Javascript源)确定它的使用方式。

答案 3 :(得分:3)

由于遗留原因。 Technically,我们应该使用application/javascriptapplication/ecmascript,但没有人真的这样做。

答案 4 :(得分:1)

  

type属性标识   <script>和之间的内容   </script>代码。

     

MIME类型由两部分组成:   一种媒体类型和一种子类型。对于   JavaScript,MIME类型是   “文本/ JavaScript的”。

尽管Douglas Crockford说leave it out

答案 5 :(得分:1)

text type可能是在没有任何特殊原因的情况下选择的:由于JavaScript是文本的,因此他们选择 text

但是,对于此类内容使用 text 类型已知有问题line breaks must be represented as a CRLF and vice versadefault value of the charset parameter is assumed to be US-ASCII(另外,HTTP specified ISO 8859-1 as default charset)。

这就是他们引入application/javascript as the MIME type for JavaScript的原因。