BOM??
Browser?Object?Model? 瀏覽器對象模型缕溉,其作用是使得JavaScript有能力與瀏覽器對話。
首先BOM,并沒有正式的標準躲株,但是現(xiàn)在的瀏覽器幾乎都實現(xiàn)了JavaScript與瀏覽器對話的方法和屬性,因此這些方法都被認為是BOM的屬性和方法涤姊;
JavaScript?Window 對象
幾乎所有的瀏覽器都支持window對象暇番,window對象表示瀏覽器的窗口,相當于瀏覽器最頂層的對象思喊,擁有最大的作用域壁酬,全局函數(shù),全局對象都可以看作window的屬性搔涝,window的成員對象厨喂。
document也是window的屬性之一
window.document.getElementById();
window的尺寸屬性
innerHeight 內(nèi)部高度
innerWidth 內(nèi)部寬度
outerHeight 外部高度
outerWidth 外部寬度
但是尺寸屬性是有兼容問的,在ie8以及以下要獲取window的尺寸相關屬性需要使用
document.documentElement.clientHeight//獲取高度
document.documentElement.clientWidth//獲取寬度
或者
document.body.clientHeight//獲取高度
document.body.?clientWidth//獲取寬度??
涵蓋所有瀏覽器的寫法(利用了短路運算符)
var w=window.innerWidth|| document.documentElement.clientWidth|| document.body.clientWidth; //獲取寬度
var h=window.innerHeight|| document.documentElement.clientHeight|| document.body.clientHeight;//獲取高度
window的其他方法
alert() //彈框庄呈,只有一個確認按鈕的彈框
prompt()//彈框蜕煌,請求輸入的彈框
confirm()//彈框,具有確認按鈕和取消按鈕的彈框
setIntervel()//定時器诬留,按照指定周期 斜纪,來調(diào)用需要執(zhí)行的函數(shù)體
clearInterval()//清除setInterval定時器;
setTimeout()//定時器文兑,只執(zhí)行一次盒刚,調(diào)用需要執(zhí)行的函數(shù)體
clearTimeout()//清除clearTimeout?定時器;?
Window的屬性
document //對Document屬性進行只讀調(diào)用
history // 對History對象進行只讀調(diào)用
location //對Location對象進行只讀調(diào)用
navigation // 對Navigation對象進行只讀調(diào)用
Navigator 對象
Navigator 對象包含有關瀏覽器的信息绿贞。
Navigator 對象屬性
appName//返回瀏覽器的名稱
appVersion//返回瀏覽器的平臺和版本信息因块;
cookiesEnabled// 返回指明瀏覽器中是否啟用 cookie 的布爾值
platform//返回運行瀏覽器的操作系統(tǒng)平臺
userAgent //返回由客戶機發(fā)送服務器的user-agent 頭部的值
Screen 對象
Screen 對象包含有關客戶端顯示屏幕的信息。
avaiHeight//返回屏幕的高度(不包括windows任務欄)
avaiWidth //返回屏幕的高度(不包括windows任務欄)
height // 返回屏幕的總高度
pixelDepth // 返回屏幕的顏色分辨率(每象素的位數(shù))
width // 返回屏幕的總寬度
History 對象
History 對象包含用戶(在瀏覽器窗口中)訪問過的 URL籍铁。
History 對象是 window 對象的一部分涡上,可通過 window.history 屬性對其進行訪問。
History對象的屬性
length//返回歷史列表中的網(wǎng)址數(shù)
History對象方法
back() //加載history列表中的前一個URL
forward() // 加載history列表中的下一個URL
go() // 加載history列表中的某個具體頁面
Location 對象
Location 對象包含有關當前 URL 的信息拒名。
Location 對象是 window 對象的一部分吩愧,可通過 window.Location 屬性對其進行訪問。
location對象屬性
hash? ? ?返回一個URL的錨部分
host? ? 返回一個URL的主機名和端口
hostname? ? 返回URL的主機名
href? ? 返回完整的URL
pathname 返回URL路徑名
port? ? 返回一個URL服務器使用的端口號
protocol 返回一個URL協(xié)議
search? ? 返回一個查詢部分
location對象方法
reload()//重新加載