浏览器常用高宽的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 相关文章推荐
JSON与XML优缺点对比分析
Jul 17 Javascript
js点击返回跳转到指定页面实现过程
Aug 20 Javascript
jquery实现拖动效果
Aug 10 Javascript
AngularJS 模块化详解及实例代码
Sep 14 Javascript
Bootstrap进度条学习使用
Feb 09 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
Oct 31 Javascript
Angular浏览器插件Batarang介绍及使用
Feb 07 Javascript
angular4中*ngFor不能对返回来的对象进行循环的解决方法
Sep 12 Javascript
layui select 禁止点击的实现方法
Sep 05 Javascript
在Layui中实现开关按钮的效果实例
Sep 29 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
vue 将多个过滤器封装到一个文件中的代码详解
Sep 05 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
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
phpmailer发送gmail邮件实例详解
2013/06/24 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
PHP实现的oracle分页函数实例
2016/01/25 PHP
Zend Framework教程之Zend_Config_Ini用法分析
2016/03/23 PHP
详解PHP实现定时任务的五种方法
2016/07/25 PHP
老生常谈PHP面向对象之标识映射
2017/06/21 PHP
Yii2结合Workerman的websocket示例详解
2018/09/10 PHP
基于jQuery的图片左右无缝滚动插件
2012/05/23 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
2015/08/11 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
2017/12/22 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
2018/09/11 Javascript
详解Vue实战指南之依赖注入(provide/inject)
2018/11/13 Javascript
浅谈vue项目用到的mock数据接口的两种方式
2019/10/09 Javascript
ElementUI中el-tree节点的操作的实现
2020/02/27 Javascript
小程序实现点击tab切换左右滑动
2020/11/16 Javascript
Python实现程序的单一实例用法分析
2015/06/03 Python
Python numpy 提取矩阵的某一行或某一列的实例
2018/04/03 Python
Python实现按中文排序的方法示例
2018/04/25 Python
Python 创建空的list,以及append用法讲解
2018/05/04 Python
python用插值法绘制平滑曲线
2021/02/19 Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
2019/02/18 Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
2019/04/05 Python
Django模板Templates使用方法详解
2019/07/19 Python
python自动化测试三部曲之unittest框架的实现
2020/10/07 Python
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
中专毕业生求职简历的自我评价
2013/10/21 职场文书
关于运动会的稿件
2014/02/02 职场文书
优秀教师工作感言
2014/02/16 职场文书
汇源肾宝广告词
2014/03/20 职场文书
群众路线教育实践活动学习笔记内容
2014/11/06 职场文书
拔河比赛队名及霸气口号
2015/12/24 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
Django实现drf搜索过滤和排序过滤
2021/06/21 Python
Python list列表删除元素的4种方法
2021/11/01 Python