JS和JQUERY获取页面大小,滚动条位置,元素位置(示例代码)


Posted in Javascript onDecember 14, 2013

js与jquery获得页面大小、滚动条位置、元素位置

//页面位置及窗口大小
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

Javascript 相关文章推荐
js过滤HTML标签以及空格的思路及代码
May 24 Javascript
使用jquery中height()方法获取各种高度大全
Apr 02 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 Javascript
JQuery.Ajax()的data参数类型实例详解
Nov 20 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
Feb 17 Javascript
JS基于正则表达式实现的密码强度验证功能示例
Sep 21 Javascript
javascript基于定时器实现进度条功能实例
Oct 13 Javascript
JavaScript数据结构之单链表和循环链表
Nov 28 Javascript
Angular 作用域scope的具体使用
Dec 11 Javascript
微信小程序前端自定义分享的实现方法
Jun 13 Javascript
微信小程序全局变量改变监听的实现方法
Jul 15 Javascript
JavaScript 如何在浏览器中使用摄像头
Dec 02 Javascript
利用javascript实现禁用网页上所有文本框,下拉菜单,多行文本域
Dec 14 #Javascript
js获取url中指定参数值的示例代码
Dec 14 #Javascript
Js实现双击鼠标自动滚动屏幕的示例代码
Dec 14 #Javascript
鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)
Dec 14 #Javascript
js键盘上下左右键怎么触发function(实例讲解)
Dec 14 #Javascript
js 上下左右键控制焦点(示例代码)
Dec 14 #Javascript
利用JS来控制键盘的上下左右键(示例代码)
Dec 14 #Javascript
You might like
php基础知识:函数基础知识
2006/12/13 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
PHP解密Unicode及Escape加密字符串
2015/05/17 PHP
Smarty模板常见的简单应用分析
2016/11/15 PHP
解决Laravel 不能创建 migration 的问题
2019/10/09 PHP
JavaScript加密解密7种方法总结分析
2007/10/07 Javascript
javascript 构建一个xmlhttp对象池合理创建和使用xmlhttp对象
2010/01/15 Javascript
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
jquery实现漫天雪花飞舞的圣诞祝福雪花效果代码分享
2015/08/20 Javascript
jQuery操作基本控件方法实例分析
2015/12/31 Javascript
基于Bootstrap里面的Button dropdown打造自定义select
2016/05/30 Javascript
全面了解addEventListener和on的区别
2016/07/14 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
layDate日期控件使用方法详解
2018/11/15 Javascript
把MySQL表结构映射为Python中的对象的教程
2015/04/07 Python
python实现类的静态变量用法实例
2015/05/08 Python
Python类属性的延迟计算
2016/10/22 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
2017/08/30 Python
Python实现的堆排序算法原理与用法实例分析
2017/11/22 Python
Python给你的头像加上圣诞帽
2018/01/04 Python
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
pandas分别写入excel的不同sheet方法
2018/12/11 Python
python中hasattr()、getattr()、setattr()函数的使用
2019/08/16 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
pycharm 使用anaconda为默认环境的操作
2021/02/05 Python
给朋友的道歉信
2014/01/09 职场文书
成考报名单位证明范本
2014/01/16 职场文书
列车长先进事迹材料
2014/01/25 职场文书
大家检讨书5000字
2014/02/03 职场文书
班组长竞聘书
2014/03/31 职场文书
工程造价专业求职信
2014/07/17 职场文书
单位委托书格式范本
2014/09/29 职场文书
python引入其他文件夹下的py文件具体方法
2021/05/23 Python