与浏览器相关的大小
- window.innerHeight: 浏览器窗口的视口高度;如果有水平滚动条,也包括滚动条高度。
- window.innerWidth: 浏览器窗口的视口宽度;如果有水平滚动条,也包括滚动条宽度。
- Window.outerHeight: 获取整个浏览器窗口的高度,包括侧边栏、窗口镶边和窗口调正边框。
- Window.outerWidth: 获取整个浏览器窗口的宽度,包括侧边栏、窗口镶边和窗口调正边框。
与屏幕相关的大小
- screen.width: 屏幕的宽度
- screen.height: 屏幕的高度
- screen.availHeight: 屏幕的可用高度,不包括底部任务栏
- screen.availWidth: 屏幕的可用宽度,不包括任务栏(如果任务栏在侧边)
- window.screenTop: 窗口的左上角到屏幕顶部的距离。注:在Firefox等浏览器中使用的是screenX属性
- window.screenLeft: 窗口的左上角在屏幕左边框的距离。注:在Firefox等浏览器中使用的是screenY属性
与元素相关的大小
- element.clientWidth: 元素的内部宽度,包括内边距,但不包括垂直滚动条、边框和外边距。
- element.clientHeight: 元素内部的高度,包含内边距,但不包括水平滚动条、边框和外边距
- element.clientLeft: 元素的左边框的宽度。不包括顶部外边距或内边距。 如果元素的文本方向是从右向左,并且由于内容溢出导致左边出现了一个垂直滚动条,则该属性包括滚动条的宽度
- element.clientTop: 元素顶部边框的宽度。不包括顶部外边距或内边距
- element.offsetWidth: 元素的边框、水平线上的内边距、竖直方向滚动条、以及内容的宽度的值(不包括外边距)
- element.offsetHeight: 元素的边框、垂直线上的内边距、水平方向滚动条、以及内容的高度的值(不包括外边距)
- element.offsetLeft元素:(包括边框,内边距,内容区)左上角相对于第一个定位的父节点(包括内边距,内容区)的左边界偏移的像素值
- element.offsetTop: 元素(包括边框,内边距,内容区)左上角相对于第一个定位的父节点(包括内边距,内容区)的上边界偏移的像素值
- element.scrollHeight: 在没有滚动条的情况下scrollHeight=clientHeight;有滚动条的情况下scrollHeight包括隐藏部分的高度。高度的测量方式与clientHeight相同:它包含元素的内边距,但不包括边框,外边距或垂直滚动条(如果存在)
- element.scrollWidth: 元素在没有滚动条的情况下scrollWidth=clientWidth;有滚动条的情况下scrollWidth包括隐藏部分的宽度。 宽度的测量方式与clientWidth相同:它包含元素的内边距,但不包括边框,外边距或垂直滚动条(如果存在)
- document.body.scrollLeft: 元素滚动条到元素左边的距离
- document.body.scrollTop: 元素滚动条到元素上边的距离
event中的五种坐标
- clientX及clientY: 相对于浏览器(可视区左上角0,0)的坐标
- screenX和screenY: 相对于设备屏幕左上角(0,0)的坐标
- offsetX和offsetY: 相对于事件源左上角(0,0)的坐标
- pageX和pageY: 相对于整个网页左上角(0,0)的坐标