3 回答

TA貢獻1779條經驗 獲得超6個贊
道格拉斯·克羅克福德說:
type="text/javascript"
此屬性是可選的。從Netscape 2開始,所有瀏覽器中的默認編程語言都是JavaScript。在XHTML中,此屬性是必需的,也是不必要的。在HTML中,最好將其省略。瀏覽器知道該怎么做。
他還說:
W3C沒有采用該language 屬性,而是偏向type 采用MIME類型的屬性。不幸的是,MIME類型不規范,所以有時候 "text/javascript"還是 "application/ecmascript"或別的東西。幸運的是,所有瀏覽器將始終選擇JavaScript作為默認編程語言,因此,最好始終簡單地編寫<script>。它是最小的,并且可以在大多數瀏覽器上使用。
僅出于娛樂目的,我嘗試了以下五個腳本
<script type="application/ecmascript">alert("1");</script>
<script type="text/javascript">alert("2");</script>
<script type="baloney">alert("3");</script>
<script type="">alert("4");</script>
<script >alert("5");</script>
在Chrome瀏覽器上,腳本3(type="baloney")以外的所有代碼均有效。IE8沒有運行腳本1(type="application/ecmascript")或腳本3。根據我對兩個瀏覽器的非廣泛示例,您似乎可以放心地忽略該type屬性,但是使用它時,最好使用一個合法的值(與瀏覽器相關)。

TA貢獻1804條經驗 獲得超2個贊
因為至少在HTML 4.01和XHTML 1(.1)中,元素的type屬性<script>是必需的。
在HTML 5中,type不再需要。
實際上,盡管您應該text/javascript在HTML源代碼中使用,但許多服務器都會使用發送文件Content-type: application/javascript。在RFC 4329中閱讀有關這些MIME類型的更多信息。
請注意RFC 4329之間的區別,RFC 4329被標記text/javascript為過時并建議使用application/javascript,并且現實中某些瀏覽器對<script>包含元素的元素type="application/javascript"(在HTML源代碼中,不是要發送的文件的HTTP Content-type標頭)表現出狂熱。最近,在WHATWG郵件列表中有關于此差異的討論(HTML 5的type默認值為text/javascript),請閱讀以下主題為主題的消息,您會考慮使用RFC 4329嗎?
添加回答
舉報