博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
理解screenX clientX pageX概念
阅读量:5225 次
发布时间:2019-06-14

本文共 1615 字,大约阅读时间需要 5 分钟。

先了解screenX,clientX,pageX概念

screenX: 鼠标位置相对于用户屏幕水平偏移量,而screenY就是垂直方向的,此时的参照点也就是原点是屏幕的左上角。clientX: 跟screenX相比就是将参照点改成了浏览器内容区域的左上角,该参照点不会随之滚动条的移动而移动。pageX: 参照点也是浏览器内容区域的左上角,但它会随着滚动条而变动

下面看看具体的各个对象中的这些属性

window对象

(1)window.screenX,window.screenY返回浏览器窗口左上角相对于当前屏幕左上角((0, 0))的水平距离和垂直距离,单位为像素。(2)window.innerHeight,window.innerWidth返回网页在当前窗口中可见部分的高度和宽度,包括滚动条的高度和宽度(3)window.outerHeight,window.outerWidth返回浏览器窗口的高度和宽度,包括浏览器菜单和边框(4)window.pageXOffset,window.pageYOffset返回页面的水平垂直滚动距离

Screen对象

availHeight     返回屏幕的高度(不包括Windows任务栏)availWidth  返回屏幕的宽度(不包括Windows任务栏)height  返回屏幕的总高度width   返回屏幕的总宽度

Element对象盒状模型相关属性

(1)Element.clientHeight,Element.clientWidth返回元素的可见高度和宽度,计算公式:clientHeight = topPadding + bottomPadding+ height - scrollbar.height(2)Element.clientLeft,Element.clientTop元素节点左边框(left border)的宽度,网页元素顶部边框的宽度,这两个属性包括滚动条的宽度,但不包括Margin和Padding。(3)Element.offsetHeight,Element.offsetWidth 返回元素的高度和宽度,计算公式:offsetHeight = clientHeight + 滚动条 + 边框(4)Element.offsetLeft,Element.offsetTop 返回元素的水平和垂直位移默认是参照body元素,当然也可以设置position:relative来改变属性(5)Element.scrollHeight,Element.scrollWidth 返回元素的整体高度和宽度,计算公式:scrollHeight = topPadding + bottomPadding + 内容高度(6)Element.scrollLeft,Element.scrollTop 返回元素左边缘和右边缘与视图之间的距离

event对象

(1)event.clientX、event.clientY鼠标相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性(2)event.screenX、event.screenY鼠标相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性(3)event.pageX、event.pageY类似于event.clientX、event.clientY,但它们使用的是文档坐标而非窗口坐标。这2个属性不是标准属性,但得到了广泛支持。IE事件中没有这2个属性(4)event.offsetX、event.offsetY鼠标相对于事件源元素(srcElement)的X,Y坐标,只有IE事件有这2个属性,标准事件没有对应的属性。

转载于:https://www.cnblogs.com/YeChing/p/6249473.html

你可能感兴趣的文章
张季跃 201771010139《面向对象程序设计(java)》第四周学习总结
查看>>
如何解除循环引用
查看>>
android中fragment的使用及与activity之间的通信
查看>>
字典【Tire 模板】
查看>>
jquery的contains方法
查看>>
python3--算法基础:二分查找/折半查找
查看>>
Perl IO:随机读写文件
查看>>
Perl IO:IO重定向
查看>>
转:基于用户投票的排名算法系列
查看>>
WSDL 详解
查看>>
[转]ASP数组全集,多维数组和一维数组
查看>>
C# winform DataGridView 常见属性
查看>>
逻辑运算和while循环.
查看>>
Nhiberate (一)
查看>>
c#后台计算2个日期之间的天数差
查看>>
安卓开发中遇到的小问题
查看>>
ARTS打卡第3周
查看>>
linux后台运行和关闭SSH运行,查看后台任务
查看>>
cookies相关概念
查看>>
CAN总线波形中ACK位电平为什么会偏高?
查看>>