1. 程式人生 > >JavaScript的組成——ECMAScript、BOM和DOM

JavaScript的組成——ECMAScript、BOM和DOM

cati 瀏覽器對象模型 內容 cape valid range 方法 組成 class

JavaScript由三部分組成:ECMAScript、BOM以及DOM

1、核心——ECMAScript:提供核心語言功能

2、文檔對象模型——DOM:提供訪問和操作網頁內容的方法和接口

針對XML但經過擴展用於HTML的應用程序編程接口(API)。

DOM把頁面映射成一個多層節點結構。

為什麽使用DOM?Netscape和微軟在開發DHTML方面各持己見,為避免兩強割據,瀏覽器互不兼容的局面,保持Web跨平臺的天性,DOM應運而生。

DOM1級:由DOM Core和DOM HTML兩部分組成。DOM Core規定如何映射基於XML的文檔結構,DOM HTML在DOM Core的基礎上擴展,增加了針對HTML的對象和方法。

DOM2級:在原來DOM的基礎上擴充了鼠標和用戶界面事件、範圍、遍歷(叠代DOM文檔的方法),且通過對象接口增加了對CSS的支持,DOM1級中的DOM Core也經過擴展開始支持XML命名空間。引入了新模塊:DOM Views——定義了跟蹤不同文檔視圖的接口;DOM Events——定義了事件和事件處理的接口;DOM Style——定義了基於CSS為元素應用樣式的接口;DOM Traversal and Range——定義了遍歷和操作文檔樹的接口。

DOM3級:引入了以統一方式加載和保存文檔的方法——在DOM加載和保存(DOM Load and Save)模塊中定義;新增了驗證文檔的方法——在DOM驗證(DOM Validation)模塊中定義。對DOM Core進行了擴展,開始支持XML 1.0規範,涉及XML Infoset、XPath和XML Base。

3、瀏覽器對象模型——BOM:提供與瀏覽器交互的方法和接口

BOM可以訪問和操作瀏覽器窗口,使用BOM可以控制瀏覽器顯示的頁面以外的部分。HTML5致力於把很多BOM功能寫入正式規範。

從根本上講,BOM只處理瀏覽器窗口和框架,但習慣把所有針對瀏覽器的JavaScript擴展算作BOM的一部分,包括彈出新瀏覽器窗口的功能,移動、縮放和關閉瀏覽器窗口的功能,提供瀏覽器詳細信息的navigator對象,提供瀏覽器所加載頁面的詳細信息的location對象,提供用戶顯示器分辨率詳細信息的screen對象,對cookie的支持,像XMLHttpRequest和IE的ActiveXObject這樣的自定義對象。

BOM是由navigator、history、screen、location、document五個對象組成的。

JavaScript的組成——ECMAScript、BOM和DOM