javascript 常用擷取頁面寬高資訊 API

來源:互聯網
上載者:User

標籤:沒有   螢幕   可見   包括   使用   rip   set   構建   eth   

在頁面的構建中 常常會需要擷取頁面的一些寬高資訊,例如實現 惰性載入圖片 需要擷取頁面的可見地區高度 和 已捲動區域的高度,以判斷圖片所在位置是否可見來決定載入圖片的時間,

花點時間整理了一下,擷取頁面寬高資訊的API

持續整理中...

在IE中:
document.body.clientWidth ==> BODY對象寬度
document.body.clientHeight ==> BODY對象高度
document.documentElement.clientWidth ==> 可見地區寬度
document.documentElement.clientHeight ==> 可見地區高度


在FireFox中:
document.body.clientWidth ==> BODY對象寬度
document.body.clientHeight ==> BODY對象高度
document.documentElement.clientWidth ==> 可見地區寬度
document.documentElement.clientHeight ==> 可見地區高度

在Opera中: 
document.body.clientWidth ==> 可見地區寬度
document.body.clientHeight ==> 可見地區高度
document.documentElement.clientWidth ==> 頁面對象寬度(即BODY對象寬度加上Margin寬)
document.documentElement.clientHeight ==> 頁面對象高度(即BODY對象高度加上Margin高)


而如果沒有定義W3C的標準,則
IE為:
document.documentElement.clientWidth ==> 0
document.documentElement.clientHeight ==> 0


FireFox為:
document.documentElement.clientWidth ==> 頁面對象寬度(即BODY對象寬度加上Margin寬)document.documentElement.clientHeight ==> 頁面對象高度(即BODY對象高度加上Margin高)


Opera為:
document.documentElement.clientWidth ==> 頁面對象寬度(即BODY對象寬度加上Margin寬)document.documentElement.clientHeight ==> 頁面對象高度(即BODY對象高度加上Margin高)
真是一件麻煩事情,其實就開發來看,寧可少一些對象和方法,不使用最新的標準要方便許多啊。

 

 

網頁可見地區寬:
document.body.clientWidth

網頁可見地區高:
document.body.clientHeight 

網頁可見地區寬:
document.body.offsetWidth(包括邊線的寬) 

網頁可見地區高:
document.body.offsetHeight(包括邊線的寬) 

網頁本文全文寬:
document.body.scrollWidth 

網頁本文全文高:
document.body.scrollHeight 

網頁被捲去的高:
document.body.scrollTop 

window.pageYOffset

網頁被捲去的左:
document.body.scrollLeft 

window.pageXOffset

網頁本文部分上:
window.screenTop 

網頁本文部分左:
window.screenLeft 

螢幕解析度的高:
window.screen.height 

螢幕解析度的寬:
window.screen.width 

螢幕可用工作區高度:
window.screen.availHeight 

螢幕可用工作區寬度:
window.screen.availWidth 

javascript 常用擷取頁面寬高資訊 API

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.