亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當服務器設置了啞劇類型時,為什么還要寫<script type =

當服務器設置了啞劇類型時,為什么還要寫<script type =

陪伴而非守候 2019-11-28 10:50:07
我的理解是,MIME類型是由Web服務器設置的。為什么要添加type="text/javascriptor type="text/css"屬性?這不是一個無用且被忽略的屬性嗎?
查看完整描述

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屬性,但是使用它時,最好使用一個合法的值(與瀏覽器相關)。


查看完整回答
反對 回復 2019-11-28
?
慕婉清6462132

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嗎?


查看完整回答
反對 回復 2019-11-28
  • 3 回答
  • 0 關注
  • 526 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號