小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IE/FF/Chrome下document.documentElement和document.body的 scrollHeight/scrollTop/clientHeight 以及判斷滾動條是否已拉

 muyable 2015-08-26

DTD已聲明
IE
document.documentElement.scrollHeight  瀏覽器所有內(nèi)容高度 ,document.body.scrollHeight  瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop  瀏覽器滾動部分高度,document.body.scrollTop 始終為0
document.documentElement.clientHeight  瀏覽器可視部分高度,document.body.clientHeight  瀏覽器所有內(nèi)容高度


FF
document.documentElement.scrollHeight  瀏覽器所有內(nèi)容高度 ,document.body.scrollHeight  瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop  瀏覽器滾動部分高度,document.body.scrollTop 始終為0
document.documentElement.clientHeight 瀏覽器可視部分高度,document.body.clientHeight  瀏覽器所有內(nèi)容高度


Chrome
document.documentElement.scrollHeight  瀏覽器所有內(nèi)容高度, document.body.scrollHeight  瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop 始終為0,document.body.scrollTop  瀏覽器滾動部分高度
document.documentElement.clientHeight  瀏覽器可視部分高度,document.body.clientHeight  瀏覽器所有內(nèi)容高度


DTD未聲明
IE
document.documentElement.scrollHeight  瀏覽器可視部分高度,document.body.scrollHeight  瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop 始終為0,document.body.scrollTop  瀏覽器滾動部分高度
document.documentElement.clientHeight 始終為0,document.body.clientHeight  瀏覽器可視部分高度


FF
document.documentElement.scrollHeight  瀏覽器可視部分高度, document.body.scrollHeight 瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop 始終為0,document.body.scrollTop 瀏覽器滾動部分高度
document.documentElement.clientHeight 瀏覽器所有內(nèi)容高度,document.body.clientHeight 瀏覽器可視部分高度


Chrome 
document.documentElement.scrollHeight 瀏覽器可視部分高度,document.body.scrollHeight 瀏覽器所有內(nèi)容高度
document.documentElement.scrollTop 始終為0,document.body.scrollTop 瀏覽器滾動部分高度
document.documentElement.clientHeight 瀏覽器所有內(nèi)容高度,document.body.clientHeight 瀏覽器可視部分高度

瀏覽器所有內(nèi)容高度即瀏覽器整個框架的高度,包括滾動條卷去部分+可視部分+底部隱藏部分的高度總和

瀏覽器滾動部分高度即滾動條卷去部分高度即可視頂端距離整個對象頂端的高度。


綜上

1、document.documentElement.scrollTop和document.body.scrollTop始終有一個為0,所以可以用這兩個的和來求scrollTop

2、scrollHeight、clientHeight 在DTD已聲明的情況下用documentElement,未聲明的情況下用body

這里之前有誤, document.compatMode 可以用來判斷是否聲明了DTD, 值為"BackCompat":未聲明,值為"CSS1Compat":已聲明。

所以,判斷滾動條是否已拉到頁面最底部,可以用如下代碼

復(fù)制代碼
window.onscroll  = function (){
    var marginBot = 0;
    if (document.compatMode === "CSS1Compat"){
        marginBot = document.documentElement.scrollHeight - (document.documentElement.scrollTop+document.body.scrollTop)-  document.documentElement.clientHeight;
    } else {
        marginBot = document.body.scrollHeight - document.body.scrollTop-  document.body.clientHeight;
    }
    if(marginBot<=0) {
        //do something        
    }
}
復(fù)制代碼

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多