記憶體洩漏4___強引用_軟引用_弱引用
阿新 • • 發佈:2021-01-21
1 BOM
1.1 BOM的技術定位
ECMAScript
,DOM
,BOM
三者互有、共有交集,共同完成web互動的實現。
1.2 BOM的結構圖
1.3 BOM屬性
屬性名 | 描述 |
---|---|
navigator | 瀏覽器資訊 |
location | 瀏覽器定位和導航 |
history | 視窗瀏覽器歷史 |
screen | 螢幕資訊 |
1.3-A navigator
在console面板中輸入navigator
,就可以得到[Object.navigator],包括:appCodeName
,platform
,userAgent
等。
/* navigator.userAgent */ //chrome [-***-] Mozilla/5.0(Windows NT 6.1;WOW64)[-AppleWebKit/537.36-](KHTML,like Gecko) Chrome/40.0.2214.115 Safari/537.36 //firefox [-***-] Mozilla/5.0(Windows NT6.1;WOW64;rv:36.0)[-Gecko/20100101-]Firefox36.0 //IE [-***-] "Mozilla/5.0 (Windows NT 6.1; WOW64; [-Trident/7.0-]; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E; rv:11.0) like Gecko"
1.3-B location
在console面板中輸入location
,就可以得到[Object.location],包括href
,host
,hash
等。
/* location */ {hash: "", host: "", hostname: "", href: "file:///D:/...", origin: "file://", pathname: "/D:/盧萬林.致庸....", port: "", protocol: "file:", search: ""} /* location的操作 */ //載入新的URL,記錄瀏覽歷史 assign(url) //載入新的URL,不記錄瀏覽歷史 replace(url) //過載當前頁面 reload()
1.3-C history
在console面板中輸入history
,就可以得到[Object.History],記錄了length
,state
;
/* history */
{constructor: History {...}, length: 1, state: null}
/* history的方法 */
//回退
back();
//前進
forward();
//轉到
go();
1.3-D screen
在console面板中輸入screen
,就可以得到[Object.screen],記錄了availHeight
,availWidth
,height
,width
等。
1.4 windows物件
1.4-A windows方法
方法名 | 描述 |
---|---|
alert(),confirm(),prompt() | 三種對話方塊 |
setTimeout(),setInterval() | 計時器 |
open(),close() | 開新視窗、關閉視窗 |
1.4-B 三種對話方塊
//alert
alert("nihao");
//confirm
confirm("真的要上嗎?");
//prompt
prompt("請輸入你的名字");
1.4-C 開關新視窗
//open()
var w = window.open("subwin.html","subwin","width=400,height=350,status=yes,resizable=yes");
//close()
w.close();
1.4-D 事件
屬性名 | 描述 |
---|---|
load | 文件和所有圖片載入完畢時 |
unload | 離開當前文件時 |
beforeunload | 和unload類似,但它提供詢問使用者是否確定離開的機會 |
resize | 拖動改變瀏覽器視窗大小時 |
scroll | 拖動滾動瀏覽器時 |