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

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

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

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

武林網(www.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ā)表
主站蜘蛛池模板: 喀喇| 新兴县| 新邵县| 平顶山市| 墨竹工卡县| 尉犁县| 景谷| 昭通市| 义马市| 武汉市| 漳浦县| 广州市| 中西区| 平陆县| 阜宁县| 阿城市| 四子王旗| 上饶县| 宜昌市| 当阳市| 永靖县| 樟树市| 马公市| 昆明市| 广昌县| 株洲市| 刚察县| 朝阳区| 克东县| 兰考县| 黎平县| 定兴县| 南充市| 府谷县| 隆化县| 威远县| 门头沟区| 庐江县| 扶风县| 东方市| 调兵山市|