相关属性介绍

都要结合鼠标事件监听使用

1、client相关属性

获取鼠标位置

鼠标相对于视口的位置
e.clientX e.clientY (e是鼠标对象)

获取节点尺寸

节点.clientWidth; 节点.clientHeight;(返回值为数值)

clientWidth = content宽度 + 左padding + 右padding(即:实际尺寸 不含border和margin,不论是什么盒模型)

clientHeight = content高度 + 左padding + 右padding (即:实际尺寸 不含border和margin,不论是什么盒模型)

获取边框宽度

clientTop = 上边框的宽度

clientLeft = 左边框的宽度

2、offset相关属性

获取鼠标位置

鼠标相对于事件源的位置
e.offsetX e.offsetY (如果鼠标事件为mousemove,则移到子节点时变成相对于子节点的位置)

获取节点尺寸

节点.offsetWidth; 节点.offsetHeight;(返回值为数值)

offsetWidth = content宽度 + 左padding + 右padding + 左boder + 右boder

offsetHeight = content高度 + 左padding + 右padding + 左boder + 右boder

offsetTop:当前节点的 上边框外边缘 到最近的已定位父级(offsetParent) 上边框内边缘 的距离。

offsetLeft:当前元素 左边框外边缘 到最近的已定位父级(offsetParent) 左边框内边缘 的距离。
offsetParent:获取离当前元素最近的已定位父级(即:position有以下属性值之一:relative absolute fixed),如果父级都没有定位,则获取的为body节点

区别

clientX/clientY 的位置是鼠标相对于整个视口的左上角的位置
offsetX/offsetY 的位置是鼠标相对于事件源(即鼠标所停留在的那个节点)的左上角的位置

clientWidth/clientHeight 的尺寸是节点不包含border宽度和margin的尺寸,不论是什么盒模型都不包含
offsetWidth/offsetHeight 的尺寸是节点不包含margin的尺寸

区别图如下

clientX与offsetX、clientWidth与offsetWidth的区别相关推荐

  1. clientX, clientY | offsetX, offsetY | pageX, pageY的区别:

    clientX, clientY | offsetX, offsetY | pageX, pageY的区别: ✍ clientX, clientY:指的是鼠标点击位置距离可视窗口的坐标: 图示:在不拉 ...

  2. clientWidth、offsetWidth、区别

    clientWidth和clientHeigh . clientTop和clientLeft 1,clientWidth的实际宽度clientWidth = width+左右padding2,clie ...

  3. clientX、offsetX、screenX、pageX的区别

    一.概念总结 1.event.clientX.event.clientY 鼠标相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条.IE事件和标准事件都定义了这2个属性.cl ...

  4. offsetX,offsetLeft,offsetWidth的区别详解

    offsetX,offsetLeft,offsetWidth的区别 offsetX/offsetY offsetX和offsetY表示(鼠标位置)相对于最近父级元素的坐标(无论父级是否定位)(不管是谁 ...

  5. js获取屏幕尺寸、clientWidth、offsetWidth、scrollWidth等区别

    js获取元素/屏幕宽高 总结如下 1.获取网页可视区域宽高(随着页面的缩放,所获取的值会相应改变) 方法一.不包括滚动条的宽高在内 document.documentElement.clientWid ...

  6. clientWidth offsetWidth innerWidth 区别(窗口尺寸 汇总)

    原文链接:http://www.cnblogs.com/youxin/archive/2012/09/21/2697514.html scrollWidth  是对象的实际内容的宽,不包边线宽度,会随 ...

  7. html5 offsetx,原生HTML5关于Div对象的.clientLeft、.offsetLeft、.clientX、.offsetX区分

    本篇主要介绍clientLeft.offsetLeft.clientX.offsetX这四种元素属性的区别,首先我们要理解清楚它们的概念: clientLeft:该元素对象的左边框宽度. client ...

  8. JS 获取浏览器窗口大小clientWidth、offsetWidth、scrollWidth

    常用: JS 获取浏览器窗口大小 // 获取窗口宽度 if (window.innerWidth) winWidth = window.innerWidth; else if ((document.b ...

  9. clientWidth、offsetWidth等介绍

    网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWid ...

最新文章

  1. 值得总结!认真安利7个让人眼前一亮的神仙软件和网站!
  2. 回调地狱解决方案之Promise
  3. javascript --- Vue初始化 模板渲染
  4. 【项目管理】git和码云的使用
  5. [建议]我对软工有话说(上)
  6. c语言高亮字符,C语言必背18个程序+190例--语法高亮
  7. java按钮退出_java – 如何在此程序中添加退出按钮?怎么样“清楚”?
  8. Linux内核管理之分配掩码(三)
  9. Cas单点登录配置数据查询用户
  10. 快捷配置mysql_windows下的mysql的快捷安装方法和简单配置
  11. 银行招聘考试题库计算机,2019银行招聘计算机试题(一)答案
  12. zynq阅读文档之通过中断读GPIO输入的编程指导
  13. 用友u8采购发票如何取消审核
  14. 程序设计习惯养成计划---二、测试代码
  15. Linux编译、运行多个java文件
  16. Android 高级学习心得及项目要点
  17. struts教程笔记6
  18. 智汀、米家、苹果homekit智能门锁新体验,打开不一样的大门
  19. 20M宽带的下载速度到时有没有20MB/s?
  20. HDU 4966 GGS-DDU [最小树形图]

热门文章

  1. 来自程序员的浪漫(表白 秘密)
  2. 一致性hash和普通hash区别?
  3. iview mysql_iView 发布后台管理系统 iview-admin,没错,它就是你想要的
  4. ITUNES 中文歌曲乱码
  5. 模板引擎Freemarker基础知识
  6. 华为智慧屏v55i怎么看直播
  7. Java中的hashcode详解
  8. 程序员练手的120多个小项目
  9. 我的网站被攻击了,运维大佬给了我自动封禁ip的脚本。
  10. HTML5导航下划线,CSS导航下划线实现