document對象
每個載入瀏覽器的HTML文檔都會成為document對象。document對象包含了文檔的基本信息,我們可以通過JavaScript對HTML頁面中的所有元素進行訪問蚪腋、修改。
- document對象有很多屬性來描述文檔信息
document.doctype
document.title
document.characterSet
document.head
document.body
document.images
/*了解
readyState屬性返回當(dāng)前文檔的狀態(tài)寝志,共有三種可能的值
1. loading:加載HTML代碼階段忘分,尚未完成解析
2. interactive:加載外部資源階段
3. complete:全部加載完成
*/
document.readyState
/*了解
compatMode 屬性返回瀏覽器處理文檔的模式,可能的值為
1. BackCompat:向后兼容模式敷鸦,也就是沒有添加DOCTYPE
2. CSS1Compat:嚴(yán)格模式息楔,添加了DOCTYPE
*/
document.compatMode
- document.open()、document.close()
document.open方法用于新建一個文檔扒披,供write方法寫入內(nèi)容值依。它實際上等于清除當(dāng)前文檔,重新寫入內(nèi)容
document.close方法用于關(guān)閉open方法所新建的文檔碟案。一旦關(guān)閉愿险,write方法就無法寫入內(nèi)容了。
- document.write()
document.write方法用于向當(dāng)前文檔寫入內(nèi)容价说。只要當(dāng)前文檔還沒有用close方法關(guān)閉辆亏,它所寫入的內(nèi)容就會追加在已有內(nèi)容的后面。
document.open();
document.write("hello");
document.write("world");
document.close();
如果頁面已經(jīng)渲染完成再調(diào)用write方法熔任,它會先調(diào)用open方法褒链,擦除當(dāng)前文檔所有內(nèi)容,然后再寫入疑苔。
如果在頁面渲染過程中調(diào)用write方法甫匹,并不會調(diào)用open方法。
需要注意的是,雖然調(diào)用close方法之后兵迅,無法再用write方法寫入內(nèi)容抢韭,但這時當(dāng)前頁面的其他DOM節(jié)點還是會繼續(xù)加載。
除了某些特殊情況恍箭,應(yīng)該盡量避免使用document.write這個方法刻恭。