为什么jQuery样本经常省略脚本类型?

时间:2013-03-04 14:40:50

标签: javascript jquery

例如here代码如下:

<html lang="en">
   <head>
     <!-- whatever -->
     <script>
       $(function() {
         $( "#datepicker" ).datepicker();
       });
     </script>
   </head>
 <!-- whatever -->

请注意,<script>应该包含type属性(可能设置为"text/javascript"),但此处不存在。

这不是我见过的唯一例子。此类代码使Visual Studio编辑器不满意 - 它强调<script>并且表示应该有type属性。这也让我很开心。

为什么type经常被省略?如果我添加type="text/javascript"会发生什么 - jQuery会破坏什么?

5 个答案:

答案 0 :(得分:15)

这可能是因为HTML5 does not require a type attribute on <script> elements(默认为"text/javascript")。

答案 1 :(得分:5)

在HTML 5中,现在默认设置脚本将是JavaScript类型,因此不需要指定它。 但似乎HTML 4.01确实需要它。

见这里:http://www.w3.org/TR/html401/interact/scripts.html#h-18.2.1

并且:http://www.w3.org/TR/html5/scripting-1.html#script

答案 2 :(得分:4)

答案 3 :(得分:2)

type标记是可选的。 所有浏览器中的默认编程语言都是JavaScript,因此它是默认的。在XHTML中,此属性是必需且不必要的。在HTML中,最好将其删除。

浏览器会知道它是Javascript。

答案 4 :(得分:1)

Visual Studio可能不高兴,因为它很懒,需要解析script标记内的代码,而intellisense也必须正常工作,所以当你直接提供type而不是让VS猜猜是什么时更好你正在使用哪种语言,即text/vbscript

您可以在Visual Studio下编写一些带有高级html脚本的vb页面。 http://www.w3schools.com/vbscript/default.asp