1、新建一个html文件。
2、为了更好区分,会创建两个按钮标签,然后给这两个按钮标签添加不同的id。
3、引入jquery文件(注:jquery的引入路径一定要正确)。
4、创建加载完成函数,然后创建一个点击按钮获取当前id的函数。
5、保存好html文件后使用浏览器打开,然后点击按钮即可看到点击的id。
6、页面所有代码,如有不懂可把所有代码复制到新建的html文件上,然后修改引入的jquery文件即可。
//获取盒子的内容高度,内容高度也可用用boxclientHeight获取,内容高度不包括边框和外边距和滚动条
var box = documentgetElementById("box")
var contentHeight = windowgetComputedStyle(box)height //输出 '60px'
//js获取移动端屏幕高度和宽度等设备尺寸,兼容性比较好的方法
documentdocumentElementclientWidth;
documentdocumentElementclientHeight;
此外,还可以使用元素的点击事件来获取元素高度等内容。
先来一个浏览器窗口大小改变的事件,用来查看浏览器窗口的大小被改变可以触发一些函数
windowonresize 浏览器窗口大小改变事件
在写js的时候偶尔需要获取各种高度,比如;浏览器高度,页面高度,滚动高度等。
(不加边线):
网页可见区域的高度和宽度(加边线):
function wHeight(){
var _sh=Mathmax(documentbodyscrollHeight,documentdocumentElementscrollHeight);
var _ch=Mathmax(documentbodyclientHeight,documentdocumentElementclientHeight);
return Mathmax(_sh,_ch);
}
我一般用这个函数
html 最好加上<!doctype html>
1、得到网页滚动条滚动高度和滚动宽度:$(window)scrollTop(), $(window)scrollLeft()
2、得到网页的宽高:$(window)width(),$(window)height()
3、计算当前网页显示区域的结算点:网页宽高分别加上滚动条滚动的宽高得到结束点
4、计算当前网页显示区域的起始点:就是网页滚动条的滚动值
5、得到指定dom的位置:$("#div")offset()得到dom的位置起始点
6、得到指定dom的宽高:$("#div")width(),$("#div")height()
7、然后判断指定dom的位置是否在网页的显示区域内
步骤是这样的,代码就不写了。。。
本篇主要介绍Web环境中屏幕、浏览器及页面的高度、宽度信息。
1介绍:介绍页面的容器(屏幕、浏览器及页面)、物理尺寸与分辨率、展示等内容。
2屏幕信息:介绍屏幕尺寸信息;如:屏幕、软件可用以及任务栏的高度和宽度。
3浏览器信息:介绍浏览器尺寸信息;如:浏览器、内部页面以及工具栏的高度和宽度。
4页面信息:介绍HTML页面尺寸信息;如:body总的、展示的高度和宽度。
一个页面的展示,从外到内的容器为:屏幕、浏览器以及页面本身。
HTML元素展现在页面内,页面展现在浏览器内,而浏览器展现在屏幕内。
通过Js的一些对象可以获取这些容器的高度、宽度。
容器的尺寸是指当前分辨率下的高度、宽度,而不是物理高度、宽度。
如:一个22寸的显示器,屏幕分辨率为1366 768,那么获取到的屏幕高度为1366px,宽度为768px。
screenheight : 屏幕高度。
screenwidth : 屏幕宽度。
screenavailHeight : 屏幕可用高度。即屏幕高度减去上下任务栏后的高度,可表示为软件最大化时的高度。
screenavailWidth : 屏幕可用宽度。即屏幕宽度减去左右任务栏后的宽度,可表示为软件最大化时的宽度。
任务栏高/宽度 : 可通过屏幕高/宽度 减去 屏幕可用高/宽度得出。如:任务栏高度 = screenheight - screenavailHeight 。
windowouterHeight : 浏览器高度。
windowouterWidth : 浏览器宽度。
windowinnerHeight : 浏览器内页面可用高度;此高度包含了水平滚动条的高度(若存在)。可表示为浏览器当前高度去除浏览器边框、工具条后的高度。
windowinnerWidth : 浏览器内页面可用宽度;此宽度包含了垂直滚动条的宽度(若存在)。可表示为浏览器当前宽度去除浏览器边框后的宽度。
工具栏高/宽度 : 包含了地址栏、书签栏、浏览器边框等范围。如:高度,可通过浏览器高度 - 页面可用高度得出,即:windowouterHeight - windowinnerHeight。
bodyoffsetHeight : body总高度。
bodyoffsetWidth : body总宽度。
bodyclientHeight : body展示的高度;表示body在浏览器内显示的区域高度。
bodyclientWidth : body展示的宽度;表示body在浏览器内显示的区域宽度。
滚动条高度/宽度 : 如高度,可通过浏览器内页面可用高度 - body展示高度得出,即windowinnerHeight - bodyclientHeight。
解释:当元素的滚动条滚动时触发的事件。
onscroll事件貌似任何实体元素都可以绑定,这里的实体元素包括DOM元素、window元素、document元素。
用法即:elementonscroll=function(){};
需要注意的是,滚动条一定要出现,而且滚动条是属于这元素的,例如:
因为外层wrap的高度小于内层inner的高度,所以当设置overflow:auto时会出现滚动条,当拖动滚动条时就会触发wrap的onscroll事件,而不是inner的onscroll事件,即这滚动条属于wrap而不是属于inner,明白这点十分重要,对下面理解的scrollTop、scrollHeight一样道理。
解释:元素滚动条内的顶部隐藏部分的高度。
scrollTop属性只有DOM元素才有,window/document没有。
用法1:获取值 var top = elementscrollTop;//返回数字,单位像素
用法2:设置值 elementscrollTop = 200;
对上面的例子来说,控制滚动条的位置是wrapscrollTop=xx;而不是innerscrollTop,道理同上。
兼容性问题:获得整个文档scrollTop,IE是documentdocumentElementscrollTop,FF/CH则是documentbodyscrollTop
解释:元素滚动条内的内容高度。
scrollHeight同scrollTop属性一样,只有DOM元素才有,window/document没有。
不同的是scrollHeight是只读,不可设置。
兼容性问题:获取整个文档scrollHeight,IE/FF/CH都可以通过documentdocumentElementscrollHeight或documentbodyscrollHeight获得。
此外还有scrollLeft,scrollWidth,道理是一样的。
这3个是全局函数,最新的IE/FF/CH都支持。
windowscroll(x,y)是让window滚动条滚动到那个x,y坐标。//x是水平坐标,y是垂直坐标。
windowscrollBy(-x,-y)是让window滚动条相对滚动到某个坐标,- 10即相对向左/向上滚动10像素。
windowscrollTo(x,y)和windowscroll(x,y)一样。
IE中:
documentbodyclientWidth ==> BODY对象宽度
documentbodyclientHeight ==> BODY对象高度
documentdocumentElementclientWidth ==> 可见区域宽度
documentdocumentElementclientHeight ==> 可见区域高度
FireFox中:
documentbodyclientWidth ==> BODY对象宽度
documentbodyclientHeight ==> BODY对象高度
documentdocumentElementclientWidth ==> 可见区域宽度
documentdocumentElementclientHeight ==> 可见区域高度
Opera中:
documentbodyclientWidth ==> 可见区域宽度
documentbodyclientHeight ==> 可见区域高度
documentdocumentElementclientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)
documentdocumentElementclientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
没有定义W3C的标准,则
IE为:
documentdocumentElementclientWidth ==> 0
documentdocumentElementclientHeight ==> 0
FireFox为:
documentdocumentElementclientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)
documentdocumentElementclientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
Opera为:
documentdocumentElementclientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)
documentdocumentElementclientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
网页可见区域宽: documentbodyclientWidth
网页可见区域高: documentbodyclientHeight
网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)
网页可见区域高: documentbodyoffsetHeight (包括边线的高)
网页正文全文宽: documentbodyscrollWidth
网页正文全文高: documentbodyscrollHeight
网页被卷去的高: documentbodyscrollTop
网页被卷去的左: documentbodyscrollLeft
网页正文部分上: windowscreenTop
网页正文部分左: windowscreenLeft
屏幕分辨率的高: windowscreenheight
屏幕分辨率的宽: windowscreenwidth
屏幕可用工作区高度: windowscreenavailHeight
屏幕可用工作区宽度: windowscreenavailWidth
HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
eventclientX 相对文档的水平座标
eventclientY 相对文档的垂直座标
eventoffsetX 相对容器的水平坐标
eventoffsetY 相对容器的垂直坐标
documentdocumentElementscrollTop 垂直方向滚动的值
eventclientX+documentdocumentElementscrollTop 相对文档的水平座标+垂直方向滚动的量
示例:
var winWidth = 0;var winHeight = 0;
function findDimensions() //函数:获取尺寸
{
//获取窗口宽度
if (windowinnerWidth)
winWidth = windowinnerWidth;
else if ((documentbody) && (documentbodyclientWidth))
winWidth = documentbodyclientWidth;
//获取窗口高度
if (windowinnerHeight)
winHeight = windowinnerHeight;
else if ((documentbody) && (documentbodyclientHeight))
winHeight = documentbodyclientHeight;
//通过深入Document内部对body进行检测,获取窗口大小
if (documentdocumentElement && documentdocumentElementclientHeight && documentdocumentElementclientWidth)
{
winHeight = documentdocumentElementclientHeight;
winWidth = documentdocumentElementclientWidth;
}
//结果输出至两个文本框
documentform1availHeightvalue= winHeight;
documentform1availWidthvalue= winWidth;
}
findDimensions();
//调用函数,获取数值
windowonresize=findDimensions;
以上就是关于jQ如何获得网页实际高度全部的内容,包括:jQ如何获得网页实际高度、2021-07-11【技术】js获取各种高度的方法、js获取各种高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)