码迷,mamicode.com
首页 > 其他好文 > 详细

欢迎使用CSDN-markdown编辑器

时间:2015-08-28 17:42:31      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:javascript

clientX/clientY 与 screenX/screenY 的区别

在JavaScript当中有时候我们需要获取鼠标悬停的位置,以此来做一些特殊处理。这时候就需要用到MouseEvent对象。MouseEvent对象提供了两组属性来定位鼠标的位置:clientX/clientY和screenX/screenY。除了这两组属性我们经常还会用到pageX/pageY和offsetX/offsetY这两组属性也是用来定位鼠标的,那么他们究竟有什么异同呢。

属性说明

  • clientX/clientY

    名称 说明 返回
    clientX 返回事件触发时鼠标相对于元素视口 的X坐标 数值
    clientY 返回事件触发时鼠标相对于元素视口 的Y坐标 数值

    这里的元素视口实际上代指就是浏览器,clientX是鼠标距离浏览器左边框的距离,clientY是鼠标距离浏览器上边框的距离。

  • screenX/screenY

    名称 说明 返回
    screenX 返回事件触发时鼠标相对于屏幕 的X坐标 数值
    screenY 返回事件触发时鼠标相对于屏幕 的Y坐标 数值

    顾名思义,screenX是鼠标距离显示器屏幕左边框的距离,screenY是鼠标距离显示器屏幕上边框的距离。

  • pageX/pageY

    名称 说明 返回
    pageX 返回事件触发时鼠标相对于文档 的X坐标 数值
    pageY 返回事件触发时鼠标相对于文档 的Y坐标 数值

    所谓文档可以简单的理解为浏览器中的页面内容,pageX是鼠标距离文档左侧的距离,pageY是鼠标距离文档上侧的距离,如果我们将鼠标悬停在浏览器中间,通过滚轮滚动浏览器,那么尽管没有移动鼠标的位置而pageY一直在变化,因为相对文档顶部的距离一直在变化。

  • offsetX/offsetY

    名称 说明 返回
    pageX 返回事件触发时鼠标相对于事件指向元素 的X坐标 数值
    pageY 返回事件触发时鼠标相对于事件指向元素 的Y坐标 数值

    假设有一个元素<p>test</p>当鼠标进入元素中触发事件时这是offsetX指的就是鼠标到P元素左边的距离。

版权声明:本文为博主原创文章,未经博主允许不得转载。

欢迎使用CSDN-markdown编辑器

标签:javascript

原文地址:http://blog.csdn.net/qiumingsheng/article/details/48051585

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!