第十章-BOM
阿新 • • 發佈:2020-07-26
BOM(Browser Object Model,瀏覽器物件模型)
題目:
- 如何識別瀏覽器的型別?
- 分析拆解url各個部分?
知識點:
- navigator(瀏覽器資訊)
- screen(螢幕尺寸資訊)
- location(位址列資訊)
- history(歷史資訊-前進/後退)
谷歌瀏覽器測試:
火狐瀏覽器測試:
- 通過
screen.width screen.height
可以獲取當前螢幕的寬高。
- 通過 location 可以獲取瀏覽器位址列中的資訊
方法 | 描述 |
---|---|
location.href | 獲取當前頁面url地址 |
location.protocol | 獲取協議 |
location.host | 獲取主機/域名 |
location.pathname | 獲取檔案路徑 |
location.search | 獲取查詢引數 |
location.hash | 獲取hash資訊,#及後面的資訊 |
- 通過
history.back() / history.forward()
可以實現瀏覽器的前進後退功能,效果同點擊左上角的箭頭。
---------------------------------上面為課程內容,下面為補充內容-----------------------------
BOM(Browser Object Model)是指瀏覽器物件模型,提供了獨立於內容的、可以與瀏覽器視窗進行互動的物件結構。BOM由多個物件組成,其中代表瀏覽器視窗的 window
物件是 BOM 的頂級物件,其他物件都是 window
物件的子物件。
BOM頂級物件 window
window是瀏覽器的頂級物件,當呼叫 window 下的屬性和方法時,可以省略 window,如前文獲取瀏覽器型別時完整寫法為:window.navigator.userAgent
注意:document 從屬於 window
onload事件
onload()
事件於頁面載入完成之後執行,作為JavaScript的入口函式,script 標籤寫在body 標籤之前是需要使用 onload 來作為入口函式,否則 script 標籤會阻塞頁面的載入。
定時器
setTimeout() 和 clearTimeout()
接受兩個引數:第一個引數為回撥函式(實現某一功能),第二個引數為 時間(毫秒數);在指定的毫秒數到達之後執行指定的函式,只執行一次。
// 建立一個定時器,1000毫秒後執行,返回定時器的標示
var timerId = setTimeout(function () {
console.log('Hello World');
}, 1000);
// 取消定時器的執行
clearTimeout(timerId);
setInterval() 和 clearInterval()
定時呼叫,如果不停止或者清除會永遠執行下去。
// 建立一個定時器,每隔1秒呼叫一次
var timerId = setInterval(function () {
var date = new Date();
console.log(date.toLocaleTimeString());
}, 1000);
// 取消定時器的執行
clearInterval(timerId);
location 補充
onload=function () {
document.getElementById("btn").onclick=function () {
//設定跳轉的頁面的地址
//location.href="http://www.jd.com";//屬性
//location.assign("http://www.jd.com");//方法
//location.reload();//重新載入--重新整理
//location.replace("http://www.jd.com");//沒有歷史記錄
};
};