取窗口滚动条滚动高度

function getScrollTop()
{
  var scrollTop=0;
  if(document.documentElement&&document.documentElement.scrollTop)
  {
  scrollTop=document.documentElement.scrollTop;
  }
  else if(document.body)
  {
  scrollTop=document.body.scrollTop;
  }
  return scrollTop;
}

取窗口可视范围的高度

function getClientHeight()
{
  var clientHeight=0;
  if(document.body.clientHeight&&document.documentElement.clientHeight)
  {
  var clientHeight = (document.body.clientHeight<document.documentElement.clientHeight)?document.body.clientHeight:document.documentElement.clientHeight;
  }
  else
  {
  var clientHeight = (document.body.clientHeight>document.documentElement.clientHeight)?document.body.clientHeight:document.documentElement.clientHeight;
  }
  return clientHeight;
}

取文档内容实际高度

function getScrollHeight()
{
  return Math.max(document.body.scrollHeight,document.documentElement.scrollHeight);
}
////////////////////////////////////////////////////

在IE中:

document.body.clientWidth ==> BODY对象宽度

document.body.clientHeight ==> BODY对象高度

document.documentElement.clientWidth ==> 可见区域宽度

document.documentElement.clientHeight ==> 可见区域高度

document.documentElement.scrollTop =>窗口滚动条滚动高度

在FireFox中:

document.body.clientWidth ==> BODY对象宽度

document.body.clientHeight ==> BODY对象高度

document.documentElement.clientWidth ==> 可见区域宽度

document.documentElement.clientHeight ==> 可见区域高度

document.documentElement.scrollTop =>窗口滚动条滚动高度

在chrome中:

document.body.clientWidth ==> BODY对象宽度

document.body.clientHeight ==> BODY对象高度

document.documentElement.clientWidth ==> 可见区域宽度

document.documentElement.clientHeight ==> 可见区域高度

document.body.scrollTop =>窗口滚动条滚动高度

在Opera中:

document.body.clientWidth ==> 可见区域宽度

document.body.clientHeight ==> 可见区域高度

document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)

document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高

滚动到顶部 window.scrollTo(0,0)
滚动到尾部 window.scrollTo(0,document.body.clientHeight)

js计算滚动条高度及窗口高度
//页面位置及窗口大小

function GetPageSize() {

var scrW, scrH;

if(window.innerHeight

&& window.scrollMaxY)

{ // Mozilla

scrW =

window.innerWidth + window.scrollMaxX;

scrH = window.innerHeight +

window.scrollMaxY;

}

else if(document.body.scrollHeight >

document.body.offsetHeight)

{ // all but IE Mac

scrW =

document.body.scrollWidth;

scrH = document.body.scrollHeight;

} else

if(document.body)

{ // IE Mac

scrW = document.body.offsetWidth;scrH = document.body.offsetHeight;

}

var winW, winH;if(window.innerHeight)

{ // all except IE

winW =

window.innerWidth;

winH = window.innerHeight;

} else if

(document.documentElement &&

document.documentElement.clientHeight)

{ // IE 6 Strict Mode

winW =

document.documentElement.clientWidth;

winH =

document.documentElement.clientHeight;

} else if (document.body) { //

other

winW = document.body.clientWidth;

winH =

document.body.clientHeight;

} // for small pages with total size less

then the viewport

var pageW = (scrW<winW) ? winW : scrW;

var pageH =

(scrH<winH) ? winH : scrH;

return {PageW:pageW, PageH:pageH,

WinW:winW, WinH:winH};};
//滚动条位置

function GetPageScroll()

{

var x, y;

if(window.pageYOffset)

{ // all except IE

y =

window.pageYOffset;

x = window.pageXOffset;

} else

if(document.documentElement && document.documentElement.scrollTop){ // IE 6 Strict

y = document.documentElement.scrollTop;

x

= document.documentElement.scrollLeft;

} else if(document.body) { // all

other IE

y = document.body.scrollTop;

x =

document.body.scrollLeft;

}

return {X:x,

Y:y};}
jQuery

获取浏览器显示区域的高度 :
$(window).height();
获取浏览器显示区域的宽度 :$(window).width();
获取页面的文档高度
:$(document).height();
获取页面的文档宽度 :$(document).width();

获取滚动条到顶部的垂直高度
:$(document).scrollTop();
获取滚动条到左边的垂直宽度 :$(document).scrollLeft();

计算元素位置和偏移量

offset方法是一个很有用的方法,它返回包装集中第一个元素的偏移信息。默认情况下是相对body的偏移信息。结果包含 top和left两个属性。

offset(options, results)
options.relativeTo  指定相对计
算偏移位置的祖先元素。这个元素应该是relative或absolute定位。省略则相对body。
options.scroll  是否把
滚动条计算在内,默认TRUE
options.padding  是否把padding计算在内,默认false
options.margin
  是否把margin计算在内,默认true
options.border  是否把边框计算在内,默认true


alert($(window).height()); //浏览器当前窗口可视区域高度

alert($(document).height()); //浏览器当前窗口文档的高度

alert($(document.body).height());//浏览器当前窗口文档body的高度

alert($(document.body).outerHeight(true));//浏览器当前窗口文档body的总高度 包括border padding margin

alert($(window).width()); //浏览器当前窗口可视区域宽度

alert($(document).width());//浏览器当前窗口文档对象宽度

alert($(document.body).width());//浏览器当前窗口文档body的高度

alert($(document.body).outerWidth(true));//浏览器当前窗口文档body的总宽度 包括border padding margin
// 获取页面的高度、宽度

function getPageSize() {

var xScroll, yScroll;

if (window.innerHeight && window.scrollMaxY) {

xScroll = window.innerWidth + window.scrollMaxX;

yScroll = window.innerHeight + window.scrollMaxY;

} else {

if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer Mac

xScroll = document.body.scrollWidth;

yScroll = document.body.scrollHeight;

} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari

xScroll = document.body.offsetWidth;

yScroll = document.body.offsetHeight;

}

}

var windowWidth, windowHeight;

if (self.innerHeight) { // all except Explorer

if (document.documentElement.clientWidth) {

windowWidth = document.documentElement.clientWidth;

} else {

windowWidth = self.innerWidth;

}

windowHeight = self.innerHeight;

} else {

if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode

windowWidth = document.documentElement.clientWidth;

windowHeight = document.documentElement.clientHeight;

} else {

if (document.body) { // other Explorers

windowWidth = document.body.clientWidth;

windowHeight = document.body.clientHeight;

}

}

}

// for small pages with total height less then height of the viewport

if (yScroll < windowHeight) {

pageHeight = windowHeight;

} else {

pageHeight = yScroll;

}

// for small pages with total width less then width of the viewport

if (xScroll < windowWidth) {

pageWidth = xScroll;

} else {

pageWidth = windowWidth;

}

arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight);

return arrayPageSize;

}
// 滚动条 
document.body.scrollTop; 
$(document).scrollTop();