写道
var getWinHeight = function() {
var winHeight;
if (window.innerHeight)
winHeight = window.innerHeight;
else if ((document.body) && (document.body.clientHeight))
winHeight = document.body.clientHeight;
// 通过深入Document内部对body进行检测,获取窗口大小
if (document.documentElement && document.documentElement.clientHeight &&
document.documentElement.clientWidth) {
winHeight =document.documentElement.clientHeight; }
return winHeight;
}
var winHeight;
if (window.innerHeight)
winHeight = window.innerHeight;
else if ((document.body) && (document.body.clientHeight))
winHeight = document.body.clientHeight;
// 通过深入Document内部对body进行检测,获取窗口大小
if (document.documentElement && document.documentElement.clientHeight &&
document.documentElement.clientWidth) {
winHeight =document.documentElement.clientHeight; }
return winHeight;
}
注意要点:
1.如果你发现你的页面上没有这一句话<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
那么这时候 document.body.clienHeight 为工作区的高度
否则 加了这一句的话那么 document.body.clienHeight 就只是body 标签的高度 , 这时候应该要用 document.documentElement && document.documentElement.clientHeight &&
document.documentElement.clientWidth 来判断 因为这时候 document.documentElement.clientHeight 就是工作区的高度了
因此这个方法是分别判断了 不同标准下 不同浏览器的工作区高度值
document.documentElement (就是HMTL标签)在FF下请加上标准约束