HTML5擴展了 HTMLDocument ,增長了新的功能。

HTML5擴展了 HTMLDocument ,增長了新的功能。與HTML5中新增的其餘DOM擴展相似,這些變化一樣基於那些已經獲得不少瀏覽器完美支持的專有擴展。因此,儘管這些擴展被寫入標準的時間相對不長,但不少瀏覽器很早就已經支持這些功能了。瀏覽器

1.  readyState 屬性ui

IE4最先爲 document 對象引入了 readyState 屬性。而後,其餘瀏覽器也都陸續添加這個屬性,最終HTML5把這個屬性歸入了標準當中。Document 的 readyState 屬性有兩個可能的值:code

  • loading ,正在加載文檔;
  • complete ,已經加載完文檔。

使用 document.readyState 的最恰當方式,就是經過它來實現一個指示文檔已經加載完成的指示器。在這個屬性獲得普遍支持以前,要實現這樣一個指示器,必須藉助onload 事件處理程序設置一個標籤,代表文檔已經加載完畢。
 document.readyState屬性的基本用法以下。對象

JS事件

if (document.readyState == 「complete」){
    //執行操做
}

支持 readyState 屬性的瀏覽器有IE4+、Firefox 3.6+、Safari、Chrome和Opera 9+。開發

2. 兼容模式文檔

自從IE6開始區分渲染頁面的模式是標準的仍是混雜的,檢測頁面的兼容模式就成爲瀏覽器的必要功能。IE爲此給 document 添加了一個名爲 compatMode 的屬性,這個屬性就是爲了告訴開發人員瀏覽器採用了哪一種渲染模式。就像下面例子中所展現的那樣,
在標準模下, document.compatMode 的值等於 「CSS1Compat」 ,
而在混雜模式下, document.compatMode 的值等於 「BackCompat」 。get

JS擴展

if (document.compatMode ==  「CSS1Compat」){
    alert(「Standards mode」);
} else {
    alert(「Quirks mode」);
}

後來,陸續實現這個屬性的瀏覽器有Firefox、Safari 3.1+、Opera和Chrome。最終,HTML5也把這個屬性歸入標準,對其實現作出了明確規定。渲染

3.  head 屬性

做爲對 document.body 引用文檔的 <body> 元素的補充,HTML5新增了 document.head屬性,引用文檔的 <head> 元素。要引用文檔的 <head> 元素,能夠結合使用這個屬性和另外一種後備方法。

JS

var head = document.head || document.getElementsByTagName(「head」)[0];

若是可用,就使用 document.head ,不然仍然使用 getElementsByTagName() 方法。

實現 document.head 屬性的瀏覽器包括Chrome和Safari 5。

相關文章
相關標籤/搜索