1、offsetX

offset意为偏移量,是事件对象距左上角为参考原点的距离。以元素盒子模型的内容区域的左上角为参考点。不包括border。

2、clientX

事件对象相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条

3、pageX

事件对象相对于整个文档的坐标以像素为单位.

4、screenX

事件对象相对于设备屏幕的左上角的坐标,当改变屏幕的分辨率的时候,坐标会随之改变.

以上除了screenX/Y以设备像素为单位,其他都是以css像素为单位

下面以一个实例来解释说明

Title

html,body{

margin: 0 auto;

padding: 0;

}

#canvas{

border:20px solid blue;

margin-left: 300px;

}

var canvas=document.getElementById('canvas');

var ctx=canvas.getContext('2d');

ctx.arc(0,0,5,0,2*Math.PI);

ctx.arc(200,200,5,0,2*Math.PI);

ctx.font="20px Arial";

ctx.textAlign='start';

ctx.fillText("画布坐标200 200",200,200);

ctx.fill();

canvas.οnmοusedοwn=function (e) {

console.log("e.offsetX=",e.offsetX);

console.log("e.clientX=",e.clientX);

console.log("e.pageX=",e.pageX);

console.log("e.screenX=",e.screenX);

}

当没有滚动条的时候,pageX==clientX,offsetX=pageX+(margin-left)+border

当有滚动条的时候,pageX!=clientX

html5 offsetx,event对象中offsetX,clientX,pageX,screenX的区别相关推荐

  1. 区分event对象中的[clientX,offsetX,screenX,pageX]

    前言 在平时的开发中,非常讨厌的就是兼容性了,兼容性的问题总会让我们记忆混淆,所以这次来区分一下event对象中的常用获取鼠标位置. clientX clientY event.clientX eve ...

  2. 一张图看懂offsetX, clientX, pageX, screenX的区别

    1.具体含义见下图1 2.浏览器的兼任情况 更多专业前端知识,请上 [猿2048]www.mk2048.com

  3. Js event对象offsetX, clientX, pageX, screenX, layerX, x区别(图解)

    简介 因为实际开发中,很少用到event对象的这几个值,每当写的时候又记不清,然后就要浪费时间去查找准确的资料,很是不爽,所以就做个记录~话不多说,直接上图(ps:图是网上找的,如果侵权,可立马删除) ...

  4. event对象的offsetX, clientX, pageX, screenX

    现在需要对event对象的几大与坐标有关的属性做一个总结,以便于认识 offsetX|offsetY offsetX/Y获取到是触发点相对被触发dom的左上角距离(包括padding在内,不包括bor ...

  5. 图解Js event对象offsetX, clientX, pageX, screenX, layerX, x区别

    通过 3 张图和 1 张表格,轻松区别 Javascript Event 对象中的offsetX, clientX, pageX, screenX, layerX, x等属性. 一.测试代码如下: & ...

  6. java中id name_关于DOM对象中的id与name的区别

    例1: value="admin"> id="un" name="username" value="silas"& ...

  7. event对象的offsetX、clientX、pageX、screenX及 window.innerWidth、outerWidth使用详解

    目录 offset client screen page window.innerWidht offset offsetX.offsetY为当前鼠标点击位置距离当前元素参考原点(左上角)的距离,而不同 ...

  8. clientX,pageX,screenX,offsetLeft,scrollTop

    这个东西,以为理解了,今天彻底弄弄. clientX 观点:鼠标相对于WINDOWS的坐标. 这里这个WINDOWS是指我们能看见的浏览器大小.所以不可能超过显示器的大小,如 screen.width ...

  9. 前端:JS/28/CSS DOM动态样式(style对象,style 对象属性与CSS属性的转换),Event DOM,事件对象简介(DOM和IE中的Event对象),实例:点出满天小星星

    CSS DOM动态样式 使用JS操作CSS中的各个属性: JS只能操作或修改行内样式,如:imgObjstyle.border = "1px solid red"; 对于类样式,通 ...

最新文章

  1. TortoiseSVN找不到系统指定路径
  2. Runtime.exec 调用OS命令特例
  3. python一节课多久_第一节课 python简介
  4. 201671030126 词频统计软件项目报告
  5. Atitit 常见项目角色与职责 目录 1.1. 常见项目角色与职责 1 1.2. 解决问题思路:一般百度,问同事,问上一级 1 1.3. 解决问题时限:与跳过法 1 1.4. 解决方法,一般实
  6. WinRAR去除广告
  7. Javaweb基础-SQL增删改查
  8. 编程到底难在哪里?—— 《人月神话》阅读分享
  9. mysql中dint,请教一下Dint和Real型变量在使用过程中出现的问题
  10. python excel转csv日期变数字_将Excel转换为CSV正确转换日期字段
  11. IOS开发学习--(3)摇骰子APP
  12. 王者更新后苹果手机服务器维护,苹果手机不能更新王者荣耀怎么解决
  13. SSM+高校教室管理系统 毕业设计-附源码181523
  14. 金融行业部分公司待遇汇总
  15. 2017 icpc 西安赛区 B.Coin(推公式+二项式定理)
  16. 利用Pandas拆分Excel的单元格为多行并保留其他行的数据
  17. Unity中Camera参数—Culling Mask详解
  18. shell 脚本 之 case-when
  19. Linux中运行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
  20. 【航拍中国】广东笔记

热门文章

  1. RichView TRVStyle ParaStyles
  2. 互联网晚报 | 优酷称TFBOYS演唱会线上票不限量;iPhone 15将采用叠层电池;万达集团成被执行人,执行标的逾3亿元...
  3. 使用OpenNI2读取oni格式的文件,并将其中的彩色视频,深度视频显示并保存
  4. 论语 季氏第十六主要大意
  5. 卜若的代码笔记系列-unity系列-第三章:android交互之android studio(as)打jar包-5003
  6. 如何解决Smartsheet 登录时遇到的问题
  7. Kooboo CMS 之TextContent详解
  8. 《长安十二时辰》愿你看尽世间百态,心中仍有热血
  9. 三维电子沙盘数字沙盘开发教程第7课
  10. OpenCV-开运算(OPEN)