코드는 다음과 같습니다.
var Browser = {
};
//페이지
Browser.Page = (function () {
return {
scrollTop: function () {
return Math.max(document.body.scrollTop, document.documentElement. scrollTop);
},
scrollLeft: function () {
return Math.max(document.body.scrollLeft, document.documentElement.scrollLeft)
},
height: function ( ) {
var _height;
if (document.compatMode == "CSS1Compat") {
_height = document.documentElement.scrollHeight;
} else {
_height = document.body.scrollHeight ;
}
return _height;
},
width: function () {
var _width
if (document.compatMode == "CSS1Compat") {
_width = document.documentElement.scrollWidth;
} else {
_width = document.body.scrollWidth;
}
return _width;
})() ;
//窗구:
Browser.Window = (function () {
return {
outerHeight: function () {
var _hei = window.outerHeight;
if (typeof _hei != "숫자") {
_hei = Browser.ViewPort.outerHeight();
}
return _hei;
},
outerWidth: function () {
var _wid = window.outerWidth;
if (typeof _wid != "number") {
_wid = Browser.ViewPort.outerWidth()
}
return _wid},
innerHeight; : function () {
var _hei = window.innerHeight;
if (typeof _hel != "number") {
_hei = Browser.ViewPort.innerHeight()
}
return _hei;
},
innerWidth: function () {
var _wid = window.innerWidth;
if (typeof _wid != "number") {
_wid = Browser.ViewPort.innerWidth ();
}
return _wid;
},
height: function () {
return Browser.Window.innerHeight()
},
width: 함수 () {
return Browser.Window.innerWidth()
}
}
})();
//视구:
Browser.ViewPort = (function () {
return {
innerHeight: function () {
var _height;
if (document.compatMode == "CSS1Compat") {
_height = document.documentElement.clientHeight;
} else {
_height = document.body.clientHeight;
}
return _height; >innerWidth: 함수 () {
var _width;
if (document.compatMode == "CSS1Compat") {
_width = document.documentElement.clientWidth
} else {
_width = document.body.clientWidth;
}
return _width;
},
outerHeight: function () {
var _height;
if (document.compatMode == "CSS1Compat") {
_height = document.documentElement.offsetHeight;
} else {
_height = document.body.offsetHeight;
}
return _height;
outerWidth; () {
var _width;
if (document.compatMode == "CSS1Compat") {
_width = document.documentElement.offsetWidth;
} else {
_width = document.body. offsetWidth;
}
return _width;
},
width: function () {
return Browser.ViewPort.innerWidth();
},
높이: function () {
return Browser.ViewPort.innerHeight();
}
}
})();
做几点说명:
1.浏览器(Opera、Chrome、FirFox、Safari)一样,已经能支持用window.innerHeight、window.innerWidth、window.outerHeight、window.outerWidth这四个属性获取浏览器的窗口、视取浏览器的窗俯、但是IE9 이전의 IE는 매우 유용했고, 이 정보는 아래에 있습니다.
2. 창에는 속도와 높이가 고정되어 있지 않습니다.是真正浏览器窗口정말 정확한 속도와 높이가 보장됩니다.
实例演示:
현재垂直内容过多 页面中,使一个DIV总能保持지금 中心位置(비精确中心位置):
代码:
复主代码
代码如下:}
大家测试时可以采用改变窗口大小的方式来查看。
时间不早了,晚安!
源代码下载
查看