国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

script標簽屬性用type還是language

2019-11-20 13:20:29
字體:
來源:轉載
供稿:網友

被人問起一個問題:

復制代碼 代碼如下:

<script language = "JavaScript">
<script type="text/javascript">
<script>

這三個標簽的使用有什么區別?

雖然一直在用,卻也沒有好好去弄清楚,這里詳細說明一下。

查閱一些資料,主要是瀏覽器支持問題。type 和 language 屬性都可用來指定 <script> 標簽中的腳本的類型。language 屬性在 HTML 和 XHTML 標準中受到了非議,這兩個標準提倡使用 type 屬性。遺憾的是,這兩個屬性的值是不一樣的。

您可能偶爾會看見 language 的值為 VBScript(對 type 而言是 text/vbscript),表示包含的腳本代碼是用 Microsoft 的 Visual Basic Script 編寫的。

利用 JavaScript,您還可以使用 language 的值 "JavaScript 1.1",表示包含的腳本語句只能被 Netscape 3.0 或更新的版本處理。Netscape 2.0 只支持 JavaScript 1.0,而無法處理標記為 "JavaScript 1.1" 的腳本。

為了保證腳本程序可以正常執行,除非特意使用僅 IE 支持的 VBScript 和 Script Encoder 機制外,應當將 SCRIPT 標記的 "type" 屬性設置為 "javascript",并且不要設置已經廢棄的 "Languange" 屬性。

各瀏覽器對于 "type" 和 "language" 屬性本身均支持,但是對于其中設置的腳本語言類型識別與支持各異:

"type" 和 "language" 同時存在時,所有瀏覽器均優先識別 "type" 屬性內的腳本類型;
其中 IE 瀏覽器實際支持 JScript 和 VBScript 腳本語言標示以及 Script Encoder 加密;
Firefox Chrome Safari Opera 對 "type" 屬性值的具體識別寬容度不一致,相對 Chrome Safari 對屬性值正確性校驗更加寬松,Firefox 的校驗最為嚴格;
在 "Language" 屬性值識別寬容度比較中,各瀏覽器中 Chrome Safari 依然最為寬松,IE 最為嚴格,Firefox 與 Opera 持平;
Language Encode 比較中,只有 IE 支持 JScript.Encoder 以及 VBScript.Encoder 類型設置,Firefox Chrome Safari均不支持,Opera 中則是該屬性值被修復為默認的 Javascript 腳本語言后才有輸出值。

復制代碼 代碼如下:

<script language="javascript">
function a() {
 b = "a";
}
a();
alert(b);
</script>

關于變量有一個問題,即使你在函數內如同上面那樣聲明變量,它就會變成全局變量。

如果用 var 聲明就會有一個問題。

復制代碼 代碼如下:

<script language="javascript">
function a() {
 var b = "a";
 delete b;
 alert(b);
}
a();
</script>

結果依然會彈出a。

為了保證腳本程序可以正常執行,除非特意使用僅 IE 支持的 VBScript 和 Script Encoder 機制外,應當將 SCRIPT 標記的 "type" 屬性設置為 "javascript",并且不要設置已經廢棄的 "Languange" 屬性。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 盐源县| 东乡| 四平市| 沙河市| 白山市| 论坛| 洛阳市| 莎车县| 凯里市| 苏尼特左旗| 七台河市| 从江县| 徐州市| 越西县| 鹤庆县| 兴宁市| 平江县| 田阳县| 绵阳市| 江北区| 漠河县| 宜宾市| 婺源县| 万载县| 北川| 浦江县| 久治县| 微博| 大港区| 磐石市| 海南省| 忻城县| 自贡市| 张掖市| 鹤庆县| 铅山县| 浏阳市| 布尔津县| 朝阳县| 黎平县| 巴林右旗|