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 相关文章推荐
javascript 循环读取JSON数据的代码
Jul 17 Javascript
JS的千分位算法实现思路
Jul 31 Javascript
JQuery 在线引用及测试引用是否成功
Jun 24 Javascript
jQuery多条件筛选如何实现
Nov 04 Javascript
AngularJS 日期格式化详解
Dec 23 Javascript
7个好用的JavaScript技巧分享(译)
May 07 Javascript
解决vue中使用proxy配置不同端口和ip接口问题
Aug 14 Javascript
express框架中使用jwt实现验证的方法
Aug 25 Javascript
vue实现百度搜索功能
Dec 28 Javascript
javascript设计模式 ? 享元模式原理与用法实例分析
Apr 15 Javascript
vue实现导航菜单和编辑文本的示例代码
Jul 04 Javascript
js利用拖放实现添加删除
Aug 27 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 404错误页面实现代码
2009/06/22 PHP
组合算法的PHP解答方法
2012/02/04 PHP
php-perl哈希算法实现(times33哈希算法)
2013/12/30 PHP
利用php获得flv视频长度的实例代码
2017/10/26 PHP
js实现的tab标签切换效果代码分享
2015/08/25 Javascript
学习JavaScript设计模式(继承)
2015/11/26 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖放商品放置购物车
2015/11/30 Javascript
javascript实现数组去重的多种方法
2016/03/14 Javascript
JavaScript中判断数据类型的方法总结
2016/05/24 Javascript
Angular.JS中的指令引用template与指令当做属性详解
2017/03/30 Javascript
Javascript实现页面滚动时导航智能定位
2017/05/06 Javascript
Vue-Router实现组件间跳转的三种方法
2017/11/07 Javascript
vue如何在自定义组件中使用v-model
2018/05/14 Javascript
element vue Array数组和Map对象的添加与删除操作
2018/11/14 Javascript
小程序封装路由文件和路由方法(5种全解析)
2019/05/26 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
简单谈谈javascript高级特性
2019/09/04 Javascript
微信小程序 自定义复选框实现代码实例
2019/09/04 Javascript
vue计算属性+vue中class与style绑定(推荐)
2020/03/30 Javascript
原生JS实现汇率转换功能代码实例
2020/05/13 Javascript
JS实现炫酷轮播图
2020/11/15 Javascript
Python 中的Selenium异常处理实例代码
2018/05/03 Python
详解Python requests 超时和重试的方法
2018/12/18 Python
python爬虫神器Pyppeteer入门及使用
2019/07/13 Python
使用virtualenv创建Python环境及PyQT5环境配置的方法
2019/09/10 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
2019/11/15 Python
浅谈Python中的字符串
2020/06/10 Python
深入浅析pycharm中 Make available to all projects的含义
2020/09/15 Python
基于Python的身份证验证识别和数据处理详解
2020/11/14 Python
iframe与window.onload如何使用详解
2020/05/07 HTML / CSS
教师党员个人整改措施材料
2014/09/16 职场文书
运动会铅球比赛加油稿
2014/09/26 职场文书
六查六看六改心得体会
2014/10/14 职场文书
学习保证书100字
2015/02/26 职场文书
2015年行风建设工作总结
2015/05/15 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书