哪个更好:<script type =“text / javascript”> … </ script>或<script> … </ script>
哪个更好或更方便使用:
<script type="text/javascript">...</script>
要么
<script>...</script>
你需要一个types属性吗? 如果您使用的是HTML5,不需要。 否则,是的。 HTML 4.01和XHTML 1.0根据需要指定了type
属性,而HTML5将其作为可选属性,默认为text/javascript
。 HTML5现在被广泛实现,所以如果你使用HTML5的文档types, <script>...</script>
是有效的,并且是一个不错的select。
至于在type属性中应该怎么做,2006年注册的MIMEtypesapplication/javascript
是用来代替text/javascript
并且被所有主要浏览器(包括Internet Explorer 9)的当前版本所支持。 来自相关RFC的引用:
因此,这个文件定义了text / javascript和text / ecmascript,但将它们标记为“过时”。 不鼓励使用上面列出的实验和未注册媒体types。 媒体types,
* application/javascript * application/ecmascript
在本文档中也有定义,它们是用于通用的,应该用来代替。
但是,包含版本8在内的IE不会在具有application/javascript
或application/ecmascript
type
属性的<script>
元素内执行脚本,所以如果您需要支持旧的IE, text/javascript
。
两者都可以工作,但是xhtml标准也要求你指定type
:
<script type="text/javascript">..</script> <!ELEMENT SCRIPT - - %Script; -- script statements --> <!ATTLIST SCRIPT charset %Charset; #IMPLIED -- char encoding of linked resource -- type %ContentType; #REQUIRED -- content type of script language -- src %URI; #IMPLIED -- URI for an external script -- defer (defer) #IMPLIED -- UA may defer execution of script -- >
type = content-type [CI]此属性指定元素内容的脚本语言并覆盖默认的脚本语言。 脚本语言被指定为内容types(例如“text / javascript”)。 作者必须为此属性提供一个值。 这个属性没有默认值。
注意上面的重点。
http://www.w3.org/TR/html4/interact/scripts.html
注意:从HTML5(远处)开始, type
属性不是必需的,并且是默认的。
除非你使用html5,否则你需要使用<script type="text/javascript"> </script>
。 在这种情况下,我们鼓励您更喜欢<script> ... </script>
(因为type属性默认指定为该值)
这是所需要的一切:
<!doctype html> <script src="/path.js"></script>
因为它的方式正确并且与所有浏览器兼容
使用最新的Firefox,我必须使用:
<script type="text/javascript">...</script>
否则脚本可能无法正常运行。