offset、client、scroll、screen的自己理解
body是DOM对象里的body子节点,即 <body> 标签;
documentElement 是整个节点树的根节点root,即<html> 标签;
window.screen.width、window.screen.height、screen.width、screen.height分别表示显示屏幕的宽高,即屏幕的分辨率。
window.innerHeight、window.innerWidth分别表示浏览器展示页面内容可见的高度和宽度。
window.outerHeight、window.outerWidth分别表示浏览器的高度和宽度,包括收藏栏等等这些的宽度和高度。
client
document.documentElement.clientWidth:浏览器上网页可见内容的宽度。
document.documentElement.clientHeight:浏览器上网页可见内容的高度。

document.body.clientWidth:body宽度。
document.body.clientHeight:body宽度。
element.clientWidth = 左侧内边距+内容宽度+右侧内边距。
element.clientHeight = 上侧内边距+内容高度+下侧内边距。
Offset
document.documentElement.offsetWidth:表示html的宽度,不包括html的margin和border宽度。
document.documentElement.offsetHeight:表示html的高度,不包括html的margin和border宽度。
document.body.offsetWidth:表示body的宽度,不包括body的margin和border宽度。
document.body.offsetHeight:表示body的高度,不包括body的margin和border宽度。
element.offsetWidth = 左侧边框宽度+左侧内边距+内容宽度+右侧内边距+右侧边框宽度。
element.offsetHeight = 上侧边框宽度+上侧内边距+内容高度+下侧内边距+下侧边框宽度。
offsetParent 返回这个元素的父级元素
scroll
document.documentElement.scrollWidth:表示浏览器页面宽度,有滚动条是包括滚动条后面的
document.documentElement.scrollHeight:表示浏览器页面高度,有滚动条是包括滚动条后面的
document.documentElement.scrollTop:表示垂直方向滚动条滚动过的距离
document.documentElement.scrollLeft:表示水平方向滚动条滚动过的距离
if (window.pageXOffset !== undefined) {
// 所有浏览器,除了 IE9 及更早版本
alert("水平滚动距离: " + window.pageXOffset);
alert("垂直滚动距离: " + window.pageYOffset);
} else {
// IE9 及更早版本
alert("水平滚动距离: " + document.documentElement.scrollLeft);
alert("垂直滚动距离: " + document.documentElement.scrollTop);
}
document.body.scrollWidth:当html、body没有marign、border、padding时等于 document.documentElement.scrollWidth
document.body.scrollHeight:当html、body没有marign、border、padding时等于 document.documentElement.scrollHeight
element.scrollWidth = 左侧内边距+内容宽度+右侧内边距。
element.scrollHeight = 上侧内边距+内容高度+下侧内边距。
element.scrollLeft :当父元素宽度小于子元素宽度时,且存在滚动条时,获取父元素上的scrollLeft的滚动条滚动过的距离。
element.scrollTop :当父元素高度小于子元素高度时,且存在滚动条时,获取父元素上的scrollTop的滚动条滚动过的距离。
offset、client、scroll、screen的自己理解的更多相关文章
- JavaScript中的 offset, client,scroll
在js 中我们要用到的 offset, client, scroll 在这我把自己理解的给大家分享一下. offset div.offsetTop 指div距离上方或上层控件的距离,单位像素 div. ...
- offset/client/scroll一些总结
offset/client/scroll一些总结 1.offset 首先offset共有五个值 1.offsetParent 2.offsetTop 3.offsetLeft 4.offsetWidt ...
- js中 offset /client /scroll总结
offset家族(只能读取,不能操作): offsetLeft:元素的边框的外边缘距离与已定位的父容器(offsetparent)的左边距离(就是子元素左边框到父元素左边框的距离). offsetTo ...
- js 元素offset,client , scroll 三大系列总结
1,element.offsetWidth : 包括 padding 和 边框 2,element.clientWidth : 包括 padding ,不包含边框 , 内容超出会溢出盒子的时候,就用s ...
- offset client scroll
offsetHeight offsetWidth返回为元素在屏幕上显示大小,不包括外边距 clientHeight clientWidht 和上面两个类似,不同的是,这两个不包括外边距高度. < ...
- bom中的offset,client,scroll
简单明了
- JS 中的offset、scroll、client总结
经常碰到offset.scroll.client这几个关键字,每次都要各种实验,这里总结一下. 两张图镇楼,随时翻阅 1. offset offset 指偏移,包括这个元素在文档中占用的所有显示宽度, ...
- javascript中常用坐标属性offset、scroll、client
原文:javascript中常用坐标属性offset.scroll.client 今天在学习js的时候觉得这个问题比较容易搞混,所以自己画了一个简单的图,并且用js控制台里面输出测试了下,便于理解. ...
- python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)
昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...
- client/scroll/offset width/height/top/left ---记第一篇博客
client/scroll/offset width/height/top/left (盒模型为contentBox,定位原点是元素左上角边框最外层的交点) clientWidth width+左p ...
随机推荐
- 简单基础路径配置(单用JSP)EASYUI
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...
- oracle数据库登录
在做以下操作时,要确保你的数据库环境已经正确安装完成.数据库在实际应用中是比较多的,我们测试人员经常会在前台造一些测试数据,在后台数据库进行验证,当然,不局限于此,数据库也可以作为一个专项测试来谈.反 ...
- springboot-条件化注解
在项目中,有时会遇到我们的Configuration.Bean.Service等等的bean组件需要依条件按需加载的情况.那么Spring Boot怎么做的呢?它为此定义了许多有趣的条件,当我们将它们 ...
- DELPHI 调用系统 ADO 配置窗体 提高软件易用性
最近DELPHI好像不太景气哦,把自己的代码拿出来晒晒.高手别喷哦. 直接上代码 implementation uses AdoConEd; var saveconnstr:string; proc ...
- 替归算法获取Treeview所有节点
treeview.nodes是获取下一级所有子节点,但是如果是多层的话,就不能,想个法子来获取所有的节点(含节点的子节点),想了想 还是替归算法比较方便,如是有了下面的代码 public static ...
- 「Luogu 1471」 方差
题目背景 滚粗了的HansBug在收拾旧数学书,然而他发现了什么奇妙的东西. 题目描述 蒟蒻HansBug在一本数学书里面发现了一个神奇的数列,包含N个实数.他想算算这个数列的平均数和方差. 输入输出 ...
- xp/win7中系统安装memcached服务,卸载memcached服务,以及删除memcached服务
1.安装到系统服务中: 在doc中:执行此软件 memcached.exe -d install(如果提示错误,要找到cmd.exe用管理员身份打开) 2.卸载: 在doc中:执行此软件 memcac ...
- 初学python-字符串中引号的使用、input简介、强制类型转换、加减乘除简写、条件判断
一.字符串中单引号和双引号的使用: 1.字符串以英文单引号' '引用.eg:'Hello World' 2.若字符串中含有单引号,则以英文双引号" "引用.eg:"I'm ...
- 洛谷P2766 最长不下降子序列问题(最大流)
传送门 第一问直接$dp$解决,求出$len$ 然后用$f[i]$表示以$i$为结尾的最长不下降子序列长度,把每一个点拆成$A_i,B_i$两个点,然后从$A_i$向$B_i$连容量为$1$的边 然后 ...
- 浅谈HTTP和TCP的理解
TCP协议对应于传输层,而Http协议对应于应用层,Http协议是建立在TCP协议之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求.HTTP会通过TCP建立一个连接通道,当HTT ...