【javascript】BOM——screen對象&history對象

screen對象

  • screen 對象在編程中用處并不大,基本是只用來表示客戶端的能力。
  • 其中包括瀏覽器窗口外部的顯示器的信息,如像素寬度和高度等。
  • 每個瀏覽器中的screen對象都包含著各不相同的屬性,下表列出了所有屬性及支持相應屬性的瀏覽器。
屬 性 說 明 IE Firefox Safari/Chrome Opera
availHeight 屏幕的像素高度減系統(tǒng)部件高度之后的值(只讀) - ? ? ?
availLeft 未被系統(tǒng)部件占用的最左側(cè)的像素值(只讀) ? ? -
availTop 未被系統(tǒng)部件占用的最上方的像素值(只讀) - ? ? -
availWidth 屏幕的像素寬度減系統(tǒng)部件寬度之后的值(只讀) ? ? ? ?
bufferDepth 讀、寫用于呈現(xiàn)屏外位圖的位數(shù) ? - - -
colorDepth 用于表現(xiàn)顏色的位數(shù);多數(shù)系統(tǒng)都是32(只讀) ? ? ? ?
deviceXDPI 屏幕實際的水平DPI(只讀) ? - - -
deviceYDPI 屏幕實際的垂直DPI(只讀) ? - - -
fontSmoothingEnabled 表示是否啟用了字體平滑(只讀) ? - - -
height 屏幕的像素高度 ? ? ? ?
left 當前屏幕距左邊的像素距離 - ? - -
logicalXDPI 屏幕邏輯的水平DPI(只讀) ? - - -
logicalYDPI 屏幕邏輯的垂直DPI(只讀) ? - - -
pixelDepth 屏幕的位深(只讀) - ? ? ?
top 當前屏幕距上邊的像素距離 - ? - -
updateInterval 讀、寫以毫秒表示的屏幕刷新時間間隔 ? - - -
width 屏幕的像素寬度 ? ? ? ?
  • 這些信息經(jīng)常集中出現(xiàn)在測定客戶端能力的站點跟蹤工具中,但通常不會用于影響功能。不過,有時候也可能會用到其中的信息來調(diào)整瀏覽器窗口大小,使其占據(jù)屏幕的可用空間。
window.resizeTo(screen.availWidth, screen.availHeight);

history 對象

  • history 對象保存著用戶上網(wǎng)的歷史記錄,從窗口被打開的那一刻算起。
  • 出于安全方面的考慮,開發(fā)人員無法得知用戶瀏覽過的URL。
  • 借由用戶訪問過的頁面列表,同樣可以在不知道實際URL 的情況下實現(xiàn)后退和前進。
  • 使用go()方法可以在用戶的歷史記錄中任意跳轉(zhuǎn),可以向后也可以向前。這個方法接受一個參數(shù),表示向后或向前跳轉(zhuǎn)的頁面數(shù)的一個整數(shù)值。負數(shù)表示向后跳轉(zhuǎn)(類似于單擊瀏覽器的“后退”按鈕),正數(shù)表示向前跳轉(zhuǎn)(類似于單擊瀏覽器的“前進”按鈕)。
//后退一頁
history.go(-1);
//前進一頁
history.go(1);
//前進兩頁
history.go(2);
  • 也可以給go()方法傳遞一個字符串參數(shù),此時瀏覽器會跳轉(zhuǎn)到歷史記錄中包含該字符串的第一個位置——可能后退,也可能前進,具體要看哪個位置最近。如果歷史記錄中不包含該字符串,那么這個方法什么也不做。
//跳轉(zhuǎn)到最近的wrox.com 頁面
history.go("wrox.com");
//跳轉(zhuǎn)到最近的nczonline.net 頁面
history.go("nczonline.net");
  • 使用back()和forward()可以模仿瀏覽器的“后退”和“前進”按鈕。
//后退一頁
history.back();
//前進一頁
history.forward();
  • history 對象還有一個length 屬性,保存著歷史記錄的數(shù)量。
if (history.length == 0){
    //這應該是用戶打開窗口后的第一個頁面
}
好好學習
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • ECMAScript 是 JavaScript 的核心,但如果要在 Web 中使用 JavaScript,那么 B...
    劼哥stone閱讀 880評論 2 5
  • Chapter 8 BOM(瀏覽器對象模型) window 對象 在網(wǎng)頁中定義的任何一個對象、變量和函數(shù),都以 w...
    云之外閱讀 385評論 0 0
  • 什么是BOM BOM:Browser Object Model 是瀏覽器對象模型,瀏覽器對象模型提供了獨立與內(nèi)容的...
    源大俠閱讀 667評論 0 0
  • 最近迷孫悟空,可能是受前段時間自來水的“大圣歸來”影響,偶然得知逆西游記這個想法。斗戰(zhàn)勝佛孫悟空,同唐僧去東土大唐...
    TailC閱讀 922評論 0 1
  • 近來陪娃每天看幾集趙薇演的《虎媽貓爸》,昨晚講述老公與前女友單獨看畫展被趙薇發(fā)現(xiàn)而引起的軒然大波,哥哥不時點評哪些...
    pennyzhou閱讀 324評論 0 0

友情鏈接更多精彩內(nèi)容