Window對象:javascript
是整個BOM的核心,全部對象和集合都以某種方式回接到window對象。Window對象表示整個瀏覽器窗口,但沒必要表示其中包含的內容。java
Document對象:瀏覽器
其實是window對象的屬性。這個對象的獨特之處是惟一一個既屬於BOM又屬於DOM的對象。從BOM角度看,document對象由一系列集合構成,這些集合能夠訪問文檔的各個部分。app
Location對象:dom
它是window對象和document對象的屬性。Location對象表示載入窗口的URL,此外它還能夠解析URI.函數
Navigator對象:spa
Navigator包含大量Web瀏覽器相關的信息。各類瀏覽器支持該對象的屬性和方法不盡相同。code
Screen對象:orm
經過其能夠獲取用戶屏幕相關的信息對象
BOM是瀏覽器對象模型,用來獲取或設置瀏覽器的屬性、行爲,例如:新建窗口、獲取屏幕分辨率、瀏覽器版本號等。 DOM是文檔對象模型,用來獲取或設置文檔中標籤的屬性,例如獲取或者設置input表單的value值。 BOM的內容很少,主要仍是DOM。 因爲DOM的操做對象是文檔(Document),因此dom和瀏覽器沒有直接關係。
BOM 部分
BOM
的核心是window
,而window
對象又具備雙重角色,它既是經過js訪問瀏覽器窗口的一個接口,又是一個Global
(全局)對象。這意味着在網頁中定義的任何對象,變量和函數,都以window做爲其global
對象。
window.close(); //關閉窗口
window.alert("message"); //彈出一個具備OK按鈕的系統消息框,顯示指定的文本
window.confirm("Are you sure?"); //彈出一個具備OK和Cancel按鈕的詢問對話框,返回一個布爾值
window.prompt("What's your name?", "Default"); //提示用戶輸入信息,接受兩個參數,即要顯示給用戶的文本和文本框中的默認值,將文本框中的值做爲函數值返回
window.status //能夠使狀態欄的文本暫時改變
window.defaultStatus //默認的狀態欄信息,可在用戶離開當前頁面前一直改變文本
window.setTimeout("alert('xxx')", 1000); //設置在指定的毫秒數後執行指定的代碼,接受2個參數,要執行的代碼和等待的毫秒數
window.clearTimeout("ID"); //取消還未執行的暫停,將暫停ID傳遞給它
window.setInterval(function, 1000); //無限次地每隔指定的時間段重複一次指定的代碼,參數同setTimeout()同樣
window.clearInterval("ID"); //取消時間間隔,將間隔ID傳遞給它
window.history.go(-1); //訪問瀏覽器窗口的歷史,負數爲後退,正數爲前進
window.history.back(); //同上
window.history.forward(); //同上
window.history.length //能夠查看歷史中的頁面數
document對象
document對象:其實是window對象的屬性,document == window.document爲true,是惟一一個既屬於BOM又屬於DOM的對象 document.lastModified //獲取最後一次修改頁面的日期的字符串表示 document.referrer //用於跟蹤用戶從哪裏連接過來的 document.title //獲取當前頁面的標題,可讀寫 document.URL //獲取當前頁面的URL,可讀寫 document.anchors[0]或document.anchors["anchName"] //訪問頁面中全部的錨 document.forms[0]或document.forms["formName"] //訪問頁面中全部的表單 document.images[0]或document.images["imgName"] // 訪問頁面中全部的圖像 document.links [0]或document.links["linkName"] //訪問頁面中全部的連接 document.applets [0]或document.applets["appletName"] //訪問頁面中全部的Applet document.embeds [0]或document.embeds["embedName"] //訪問頁面中全部的嵌入式對象 document.write(); 或document.writeln(); //將字符串插入到調用它們的位置