DOM和BOM

DOM編程

文檔對象模型,包括document自己和頁面上的各類標籤元素。DOM是訪問和控制文檔及標籤元素的API,經過DOM能夠查找、修改、添加、刪除標籤元素,還能夠添加事件監聽函數以響應頁面上的各類事件。H5新增了一些DOM API(如querySelector)在一程度上加強了DOM,但實際開發中,使用jQuery進行開發仍是很是廣泛的。由於jQuery不只提供了強大的DOM操做能力,並且可以解決瀏覽器兼容性問題。此外jQuery還提供了Ajax請求、動畫等實用功能,還提供了CallbacksDeferred等高級API。瀏覽器

 

BOM函數

瀏覽器對象模型,包括window、locationhistory、navigator等動畫

window對象是全局做用域,window對象會隨頁面的加載或刷新而重置,即全局做用域生命週期相關的內容都會被銷燬。window對象提供了窗口相關的API,用於控制窗口及窗口與窗口之間的關係。window對象還提供了XHR、setTimeoutalertWebWorker等各類編程接口和功能支持。實際上從window對象出發能夠訪問幾乎全部的Web API。url

location提供了與url相關的API,經過location提供的屬性能夠獲取url的各個組成部分。location還提供了對頁面進行導航控制的基本功能,如對href賦值、assign()reload()replace()方法等。值得注意的是location提供了hashchange事件,能夠監聽hash fragment的變化,這對於單頁Web應用中的路由機制提供了重要的支持。spa

history對象提供了瀏覽歷史記錄控制功能,如back()、forward()go()等,H5還新增了狀態相關的API:state、pushStatereplaceState配合windowpopstate事件能夠爲路由機制提供重要的支持。操作系統

navigator對象提供了瀏覽器和操做系統信息的描述,如userAgentH5還在navigator中加入了不少設備訪問功能,如geolocation、battery、vibrate等(瀏覽器目前支持不太好)。對象

相關文章
相關標籤/搜索