官术网_书友最值得收藏!

2.9 瀏覽器對HTML屬性的支持

對于HTML開發設計人員來講,瀏覽器的兼容性是一個復雜又不可回避的問題。隨著技術的進步,目前市面上的主流瀏覽器對HTML的支持已經很完善了,不像早期瀏覽器的兼容性那樣,讓開發設計人員傷透了腦筋。

本節介紹瀏覽器對HTML屬性的支持問題,包括對最新的HTML 5屬性的支持。HTML 5是一個全新的標準,增加了很多新的特性,對多媒體的支持更全面。因此,瀏覽器對HTML 5屬性的支持也是判斷其兼容性的重要指標。

下面看一段判斷瀏覽器是否支持HTML某個屬性的代碼(參見源代碼ch02/ch02-html-support-prop.html文件)。

【代碼2-13】

【代碼解析】

第14~18行代碼定義了一個JavaScript腳本函數isSupport(prop)。其中,第16行代碼通過createElement()函數方法創建一個div標簽元素,并使用in方法將對屬性的判斷結果進行返回。

第29行代碼定義了一個包含6個常用的HTML屬性的數組“prop”。

第30~32行代碼通過for循環語句依次判斷數組“prop”中的屬性是否為div標簽元素所支持,具體是通過isSupportProp()函數方法來判斷的。

第33~42行代碼是isSupportProp()函數方法的實現過程,在該函數方法內部通過調用第14~18行代碼定義的isSupport(prop)函數方法來實現判斷。

運行測試網頁,效果如圖2.16所示。層(div)標簽元素是支持“id”、“style”和“title”屬性的,而“name”、“type”和“value”屬性是不支持的。

圖2.16 HTML常用屬性判斷結果

下面看一段判斷瀏覽器是否支持HTML 5屬性的代碼(參見源代碼ch02/ch02-html-support-HTML 5.html文件)。

【代碼2-14】

【代碼解析】

在這段代碼中,判斷瀏覽器是否支持HTML 5屬性主要是使用了Web Worker屬性。第05行代碼通過typeof()方法判定Worker屬性是否未定義("undefined"),如果定義了則判定瀏覽器支持HTML 5屬性。

下面使用最新版的FireFox瀏覽器(v.50.0.2版)運行測試該頁面,其效果如圖2.17所示。可以看出,新版FireFox瀏覽器對HTML 5是支持的。

下面再使用最新版的Microsoft Edge瀏覽器(Windows 10預覽版自帶)運行測試這個頁面,其效果如圖2.18所示。從中看到,Microsoft Edge瀏覽器對HTML 5也是支持的。看來不支持HTML 5的瀏覽器只有早期Windows XP系統下的IE6、IE7和IE8瀏覽器了。

圖2.17 判斷FireFox瀏覽器是否支持HTML 5

圖2.18 判斷Microsoft Edge瀏覽器是否支持HTML 5

主站蜘蛛池模板: 克什克腾旗| 横山县| 苏尼特左旗| 斗六市| 富蕴县| 昭觉县| 清镇市| 嘉鱼县| 兰溪市| 专栏| 丽江市| 古浪县| 正阳县| 五莲县| 启东市| 临夏市| 红河县| 太康县| 环江| 新邵县| 出国| 新泰市| 道孚县| 东山县| 健康| 肇庆市| 金华市| 通许县| 司法| 昌邑市| 永州市| 镇远县| 永年县| 峡江县| 英山县| 资中县| 左权县| 新密市| 建德市| 万宁市| 大方县|