浏览器常用高宽的jquery插件


Posted in Javascript onFebruary 24, 2011
(function($) { 
/** 
* 取得浏览器视图的宽度 
*/ 
$.viewWidth=function(){ 
var w = 0, D=document; 
if( D.documentElement && D.documentElement.clientWidth ) { 
w = D.documentElement.clientWidth; 
} else if( D.body && D.body.clientWidth ) { 
w = D.body.clientWidth; 
} 
return w ; 
} 
/** 
* 取得浏览器视图的高度 
*/ 
$.viewHeight=function(){ 
var h = 0, D=document; 
if(document.compatMode!='CSS1Compat'){ 
h = D.body.clientHeight; 
}else{ 
if( D.documentElement && D.documentElement.clientHeight ) { 
h = D.documentElement.clientHeight; 
} else if( D.body && D.body.clientHeight ) { 
h = D.body.clientHeight; 
} 
} 
return h; 
} 
/** 
* 取得画板的高度(即所有内容,当浏览器内容不足的时候为浏览器视图大小) 
*/ 
$.canvasHeight=function(){ 
var D=document,h=0; 
h=Math.max(Math.max(D.body.scrollHeight,D.documentElement.scrollHeight), 
Math.max(D.body.offsetHeight,D.documentElement.offsetHeight), 
Math.max(D.body.clientHeight,D.documentElement.clientHeight) 
); 
if($.browser.msie&&$.browser.version>6&&D.body.scrollHeight<$.viewHeight()){ 
h=D.body.clientHeight; 
} 
if($.browser.msie&&document.compatMode=='CSS1Compat'&&D.body.scrollHeight<$.viewHeight()){ 
if($.browser.version>7&&$.browser.version<9){ 
}else if($.browser.version>6&&$.browser.version<8){ 
} 
h=D.documentElement.clientHeight; 
} 
return h; 
} 
/** 
* 取得画板的宽度(即所有内容,当浏览器内容不足的时候为浏览器视图大小) 
*/ 
$.canvasWidth=function(){ 
var D=document,w=D.body.scrollWidth; 
if(document.compatMode=='CSS1Compat'){ 
w=D.documentElement.scrollWidth; 
}else{ 
if($.browser.msie&&$.browser.version<=6&&D.body.scrollWidth>$.viewWidth()){ 
w=Math.max(Math.max(D.body.scrollWidth,D.documentElement.scrollWidth), 
Math.max(D.body.offsetWidth,D.documentElement.offsetWidth), 
Math.max(D.body.clientWidth,D.documentElement.clientWidth) 
); 
} 
} 
return w; 
} 
/** 
* 取得画板的宽度(即所有内容,当浏览器内容不足的时候为浏览器视图大小) 
*/ 
$.scrollLeft=function(){ 
if(document.compatMode!='CSS1Compat'||($.browser.msie&&$.browser.version<=6)){ 
return Math.max($('body').scrollLeft(),document.documentElement.scrollLeft); 
}else{ 
return $('body').scrollLeft(); 
} 
} 
/** 
* 取得画板的宽度(即所有内容,当浏览器内容不足的时候为浏览器视图大小) 
*/ 
$.scrollTop=function(){ 
if (document.compatMode != 'CSS1Compat'||($.browser.msie&&$.browser.version<=6)) { 
return Math.max($('body').scrollTop(), document.documentElement.scrollTop); 
}else{ 
return $('body').scrollTop(); 
} 
} 
})(jQuery);
Javascript 相关文章推荐
JavaScript CSS修改学习第一章 查找位置
Feb 19 Javascript
javascript获取checkbox复选框获取选中的选项
Aug 12 Javascript
node.js微信公众平台开发教程
Mar 04 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
May 03 Javascript
JS事件添加和移出的兼容写法示例
Jun 20 Javascript
JS判断输入的字符串是否是数字的方法(正则表达式)
Nov 29 Javascript
详解用node.js实现简单的反向代理
Jun 26 Javascript
JS原生带小白点轮播图实例讲解
Jul 22 Javascript
Vue实现textarea固定输入行数与添加下划线样式的思路详解
Jun 28 Javascript
vue中slot(插槽)的介绍与使用
Nov 12 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
Mar 08 Javascript
JS自定义滚动条效果
Mar 13 Javascript
基于jquery的横向滚动条(滑动条)
Feb 24 #Javascript
基于JQuery的日期联动实现代码
Feb 24 #Javascript
jQuery boxy弹出层插件中文演示及使用讲解
Feb 24 #Javascript
jquery的键盘事件修改代码
Feb 24 #Javascript
Javascript公共脚本库系列(一): 弹出层脚本
Feb 24 #Javascript
从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
Feb 23 #Javascript
从零开始学习jQuery (十) jQueryUI常用功能实战
Feb 23 #Javascript
You might like
php中一个有意思的日期逻辑处理
2012/03/25 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
laravel5表单唯一验证的实例代码
2019/09/30 PHP
js escape,unescape解决中文乱码问题的方法
2010/05/26 Javascript
js中通过父级进行查找定位元素
2014/06/15 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
BootStrap glyphicons 字体图标实现方法
2016/05/01 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
JavaScript实现动态增删表格的方法
2017/03/09 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
从零开始学习Node.js系列教程三:图片上传和显示方法示例
2017/04/13 Javascript
浅谈Vue.js中的v-on(事件处理)
2017/09/05 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
js 将canvas生成图片保存,或直接保存一张图片的实现方法
2018/01/02 Javascript
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
解决vue无法侦听数组及对象属性的变化问题
2020/07/17 Javascript
Vue+Bootstrap收藏(点赞)功能逻辑与具体实现
2020/10/22 Javascript
Python处理PDF及生成多层PDF实例代码
2017/04/24 Python
Python3 实现串口两进程同时读写
2019/06/12 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
如何将PySpark导入Python的放实现(2种)
2020/04/26 Python
python获取时间戳的实现示例(10位和13位)
2020/09/23 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
2020/11/06 Python
Python代码覆盖率统计工具coverage.py用法详解
2020/11/25 Python
几个解决兼容IE6\7\8不支持html5标签的几个方法
2013/01/07 HTML / CSS
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
Ajax实现页面无刷新留言效果
2021/03/24 Javascript
会计电算一体化个人简历的自我评价
2013/10/15 职场文书
车间主任岗位职责
2014/03/16 职场文书
毕业大学生自荐信
2014/06/17 职场文书
《小摄影师》教学反思
2016/02/18 职场文书
Python使用pandas导入xlsx格式的excel文件内容操作代码
2022/12/24 Python