BOM(瀏覽器對象模型),提供了獨立於頁面內容而與瀏覽器窗口進行交互的對象。使用BOM,開發者能夠移動窗口、改變狀態欄的文本以及執行其餘與頁面內容不直接的動做。BOM由一系列相關的對象構成。html
1、window 對象瀏覽器
window對象是整個BOM的核心,全部對象和集合都以某種方式與window對象關聯。緩存
1.窗口操做服務器
window對象調整窗口的大小和位置:app
1)window.moveBy(dx,dy)--將瀏覽器窗口相對當前位置水平或垂直移動(px)到指定的距離(相對定位);函數
2)window.moveTo(x,y)--移動瀏覽器窗口,使它的左上角位於屏幕的(x,y)處,可以使用負數(絕對定位);工具
3)window.resizeBy(dw,dh)--相對於瀏覽器窗口當前的大小改變爲指定的寬度和高度(px),當爲負數時,窗口則縮小(相對調整窗口大小)操作系統
4)window.resizeTo(w,h)--調整窗口爲指定的寬度和高度,不能爲負數。orm
2.打開新窗口htm
height:窗口的高度,單位像素;
width:窗口的寬度,單位像素;
Left:窗口的左邊緣位置;
top:窗口的上邊緣位置;
fullscreen:是否全屏,默認值no;
location:是否顯示地址欄,默認值yes;
menubar:是否顯示菜單欄,默認值yes;
resizable:是否容許改變窗口大小,默認值yes;
scrollbars:是否顯示滾動條,默認值yes;
status:是否顯示狀態欄,默認值yes;
titlebar:是否顯示標題欄,默認值yes;
toolbar:是否顯示工具條,默認值yes;
3.系統對話框
1)window.alert--顯示消息提示框
Window.alert([message])
2)window.confirm--顯示一個確認提示框,點擊Ok按鈕是返回true,點擊Cancel按鈕時返回false;
window.confirm([message])
3)window.prompt--顯示一個文本輸入消息框,此方法接受兩個參數,即要顯示給用戶的文本和文本框中的默認文本(可爲空);
window.prompt([message],[default])
4.狀態欄
瀏覽器狀態的顯示信息能夠經過window.status屬性直接進行修改。
window.status="[message]"
5.時間間隔和暫停
定時操做一般有兩種使用目的,一種是週期性的執行腳本,如時鐘;另外一種則是將某個操做延時一段時間執行。window.setTimeout函數使其延時執行,且後面腳本正常運行。
1)window.setInterval--用於設置定時器,每隔一段時間執行指定代碼;
window.setInterval(執行代碼,等待的毫秒數)
2)window.clearInterval--用於清除setInterval函數設定的定時器;
window.clearInterval(阻止執行的代碼id)
3)window.setTimeout--用於設置定時器,在一段時間以後執行指定代碼;
window.setTimeout(執行代碼,等待的毫秒數)
4)window.clearTimeout--用於清除setTimeout函數設定的定時器;
window.clearTimeout(阻止執行的代碼id)
6.歷史
window.history訪問瀏覽器窗口的歷史,可以使用length屬性查看歷史中的頁面數,alert(history.length);
window.history.go(前進爲正數/後退爲負數)/history.go(前進爲正數/後退爲負數)
history.back()--返回一頁
history.forward()--前進一頁
2、document 對象
document 對象其實是window 對象的屬性,window 對象的任何屬性和方法均可以直接訪問。
document 對象的集合:
anchors:頁面中全部錨的集合(由<a name=」anchorname」></a>表示);
applets:頁面中全部applet的集合;
embeds:頁面中全部嵌入式對象的集合(由<embed/>標籤表示);
forms:頁面中全部表單的集合;
images:頁面中全部圖像的集合;
links:頁面中全部連接的集合(<a href=」somewhere.html」></a>表示);
1)document.write/writeIn()--在當前文檔中輸入文字(writeIn比write末尾多一個換行);
document.write/writeIn(text)
2 )document.open和document.close是一組方法,一般與document.write/writeIn方法配合使用。
document.open--打開文檔準備寫入內容;
document.close--用於關閉文檔,同時將寫出內容輸出到頁面;
3、location 對象
location.href是最經常使用的屬性,用於獲取或設置窗口的URL,改變該屬性的值,就可導航到新的頁面:
location.href=」http://www.baidu.com/「;
location.assign()方法實現的是一樣的操做:
location.assign(」http://www.baidu.com/「);
location.reload()方法有兩種模式,即從瀏覽器緩存中重載(false),或從服務器端重載(true);
4、navigator 對象
navigator 對象包含了關於Web瀏覽器的信息,瀏覽器的類型、版本信息均可以從對象中獲取。
5、screen 對象
screen 對象用於獲取某些關於用戶屏幕的信息;
screen 對象的屬性:
availHeight:窗口可使用的屏幕高度(px),其中包括操做系統元素(如window工具欄)須要的空間;
availWidth:窗口可使用的屏幕寬度(px);
colorDepth:用戶表示顏色的位數;
height:屏幕的高度(px);
width:屏幕的寬度(px);