国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

網頁制作技巧:獲取頁面可視區(qū)域的高度

2024-07-11 09:02:22
字體:
來源:轉載
供稿:網友

武林網(m.survivalescaperooms.com)文章簡介:獲取頁面可視區(qū)域高度,獲取頁面高度,獲取滾動條滾動上去的頁面高度.

function getWH(){

var wh = {};

"Height Width".replace(/[^/s]+/g,function(a){

var b = a.toLowerCase();

wh[b]=window["inner".concat(a)]||

document.compatMode ==="CSS1Compat" && document.documentElement["client".concat(a)]

|| document.body["client".concat(a)];

});

return wh;

}

了解兩個名詞:BackCompat 標準兼容模式關閉(怪異模式)

CSS1Compat 標準兼容模式開啟

這個方法為獲取頁面可視區(qū)域的高度,普通情況下,window.innerHeight 即可獲取,如果是正常模式,并且有clientHeight的情況下, document.documentElement.clientHeight 獲取的就是可視區(qū)域高度。在怪異模式下,是使用document.body獲取。


function getBodyWH(){

var wh = {};

"Height Width".replace(/[^/s]+/g,function(a){

var b = a.toLowerCase();

wh[b]=document.compatMode ==="CSS1Compat" && document.documentElement["scroll".concat(a)]

|| document.body["scroll".concat(a)];

});

return wh;

}

這個為獲取頁面的高度,用于iframe的自適應時候獲取。


var ss = {};

ss.scrollTopFn = function(arg){

var a = navigator.userAgent.toLowerCase().indexof("webkit");//判斷webkit內核

var scrollTop;

if(a>-1||document.compatMode =="BackCompat"){

this.scrollTopFn =function(arg){

if(typeof arg == 'number'){

document.body.scrollTop = arg;

}else{

return document.body.scrollTop;

}

}

}else{

this.scrollTopFn =function(arg){

if(typeof arg == 'number'){

document.documentElement.scrollTop = arg;

}else{

return document.documentElement.scrollTop;

}

}

}

return this.scrollTopFn.apply(this,arguments);

}

這個返回scrollTop 即滾動上去的頁面的高度,因為在webkit內核下渲染的都是使用body,所以和上面兩個判斷是不一樣的。在怪異模式下同樣是用body。其他情況都是用documentElment。

這些玩意蠻煩的,今天弄了一天才總結出來了這么些,網上查找也沒找到特別標準的說法,就一個個自己試了下,寫了幾個函數(shù)以供以后使用。有人如果有更好的判斷方法的話,還望告知,謝謝!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 神木县| 白河县| 临夏市| 伊春市| 克山县| 乌鲁木齐县| 繁峙县| 黄龙县| 曲靖市| 龙南县| 常德市| 兰溪市| 台安县| 宝山区| 绥化市| 石阡县| 宁乡县| 上栗县| 策勒县| 固始县| 和政县| 内丘县| 嘉禾县| 忻城县| 壤塘县| 耿马| 卢湾区| 左权县| 常熟市| 英超| 麦盖提县| 黎城县| 闻喜县| 梁平县| 乳山市| 大名县| 绩溪县| 黔南| 鸡东县| 阿拉善右旗| 榆林市|