获取浏览器各种距离和坐标
获取浏览器各种距离和坐标
type
status
date
slug
summary
tags
category
icon
password
Blocking
Blocked by
top
URL
Sub-item
Parent item

screen

  • screen.width:屏幕的宽度
  • screen.height:屏幕的高度

style系列(必须是行内设置样式才有效)

  • element.style.width:当前对象的宽度。
  • element.style.height:当前对象的高度。
  • element.style.left:当前对象的left值。
  • element.style.top:当前对象的top值。

offset系列

偏移量包含元素在屏幕上占用的所有可见的空间。 偏移量是相对于offsetParen计算的,也就是距该元素最近的position不为static的祖先元素
element.offsetWidth和style.width区别: 1.style.width返回值除了数字外还带有单位px; 2.如对象的宽度设定值为百分比宽度,则无论页面变大还是变小,style.width都返回此百分比,而offsetWidth则返回在不同页面中对象的宽度值而不是百分比值; 3.如果没有给 HTML 元素指定过 width样式,则 style.width 返回的是空字符串; 4.style.width不包含border和padding。
  • element.offsetParent:当前对象的上级层对象。
  • element.offsetWidth:当前对象的宽度。(width+padding+border)
  • element.offsetHeight:当前对象的高度。(Height+padding+border)
  • element.offsetLeft:当前对象到其上级层左边的距离 。
  • element.offsetTop:当前对象到其上级层上边的距离 。

client

元素的可见内容
  • element.clientWidth: 获取对象可见内容的宽度,不包括滚动条,不包括边框;
  • element.clientHeight: 获取对象可见内容的高度,不包括滚动条,不包括边框;
  • element.clientLeft: 获取对象的宽度
  • element.clientTop:获取对象的高度

scroll

包含滚动内容的元素的大小。返回值包括padding,但不包括margin和border。
  • element.scrollWidth:获取对象的滚动宽度 。
  • element.scrollHeight: 获取对象的滚动高度。
  • element.scrollLeft:设置或获取位于对象左边界和对象中目前可见内容的最左端之间的距离(width+padding为一体)
  • element.scrollTop:设置或获取位于对象最顶端和对象中可见内容的最顶端之间的距离;(height+padding为一体)

getBoundingClientRect()

获取元素相对于窗口的位置
  • Element.getBoundingClientRect() 获取元素相对于窗口的位置 该方法会返回一个DOMRect对象,包含left, top, width, height, bottom, right六个属性。

事件属性

1.client系列
  • event.clientX :设置或获取鼠标指针位置相对于当前窗口的 x 坐标,其中客户区域不包括窗口自身的控件和滚动条。
  • event.clientY: 设置或获取鼠标指针位置相对于当前窗口的 y 坐标,其中客户区域不包括窗口自身的控件和滚动条。
2.screen系列
  • event.screenX: 设置或获取获取鼠标指针位置相对于用户屏幕的 x 坐标。
  • event.screenY: 设置或获取鼠标指针位置相对于用户屏幕的 y 坐标。
3.offset系列
  • event.offsetX:,鼠标相比较于触发事件的元素的X位置,以元素盒子模型的内容区域的左上角为参考点,如果有boder,可能出现负值。
  • event.offsetY:同上,Y位置。
4.layer系列(IE8以及以下版本没有)
  • event.layerX:鼠标相比较于当前坐标系的X位置,即如果触发元素没有设置绝对定位或相对定位,以页面为参考点,如果有,将改变参考坐标系,从触发元素盒子模型的border区域的左上角为参考点
  • event.layerY:同上,Y位置。
5.XY系列(FF没有)
  • event.x:相对可视区域的X坐标
  • event.y:相对可视区域的Y坐标
6.page系列 (IE8以及以下版本没有) 类似于event.clientX、event.clientY,但它们使用的是文档坐标而非窗口坐标。
  • event.pageX:设置或获取鼠标指针位置相对于当前文档的 x 坐标
  • event.pageY:设置或获取鼠标指针位置相对于当前文档的 y 坐标

引用

require 动态引入问题vscode 开发环境搭建linux开发环境
Loading...