浏览器的鼠标坐标值获取及pageX、clientX、screenX的差异
来源:互联网 发布:苏州爱知科技底薪多少 编辑:程序博客网 时间:2024/09/21 08:18
写在前面
获取方法比较简单。重点在于理解三种值的实际意义。
代码
<p><strong>screen:</strong><span id="screen"></span></p><p><strong>client:</strong><span id="client"></span></p><p><strong>page:</strong><span id="page"></span></p>
三个段落分别用来显示其值。
$(document).ready(function () { $(this).click(function (e) { $("#screen").text("screenX:"+e.screenX+" screenY:"+e.screenY); $("#client").text("clientX:"+e.clientX+" clientY:"+e.clientY); $("#page").text("pageX:"+e.pageX+" pageY:"+e.pageY); }); });
当用户在文文档中点击鼠标时,触发函数,从而将三种坐标值显示出来。
全文代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="../../lib/jquery/jquery.js"></script></head><body><p><strong>screen:</strong><span id="screen"></span></p><p><strong>client:</strong><span id="client"></span></p><p><strong>page:</strong><span id="page"></span></p><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><p>jjj</p><script> $(document).ready(function () { $(this).click(function (e) { $("#screen").text("screenX:"+e.screenX+" screenY:"+e.screenY); $("#client").text("clientX:"+e.clientX+" clientY:"+e.clientY); $("#page").text("pageX:"+e.pageX+" pageY:"+e.pageY); }); });</script></body></html>
分析:当浏览器最大化即左侧边缘与屏幕左侧贴合时,pageX、clientX、screenX的值都是一样的。否则,screenX的值会比其他两个值大,这个差值正好是浏览器左侧边缘到屏幕左侧边缘的距离。
而对于Y值,一般情况下,screenY的值都比其他两个值大。这很好理解。在页面全屏时,仍然大,不过只大了一个像素值。当页面在纵向没有滚动条时,clientY与pageY的值是一样的。当页面向下滚动了一段距离时,pageY将比clientY的值大。因为,pageY是从文档的最上方开始计算,而clientY是鼠标距离浏览器窗口最上方的距离,发生滚动时,clientY是不考虑滚进去的那段距离的。
0 0
- 浏览器的鼠标坐标值获取及pageX、clientX、screenX的差异
- 鼠标位置的获取clientX、pageX、offsetX,screenX的使用
- javascript获取鼠标坐标pageX和clientX的区别
- screenX pageX clientX 的区别
- screenX clientX pageX的区别
- screenX clientX pageX的区别
- pagex,screenx,clientx的区别
- screenX clientX pageX的区别
- screenX clientX pageX的区别
- screenX clientX pageX的区别
- 事件坐标:screenX,clientX,pageX,offsetX的区别
- pageX、clientX、screenX、offsetX、layerX、x 在不同浏览器上的使用及区别
- pageX,clientX,offsetX,screenX的差别
- screenX,clientX,pageX,offsetX,pageXoffset的区别
- offsetX,clientX,screenX,pageX的比较小结
- 比较offsetX, pageX,clientX,screenX的区别
- 比较offsetX, pageX,clientX,screenX的区别
- 原生js获取鼠标坐标方法全面讲解:clientX/Y,pageX/Y,offsetX/Y,layerX/Y,screenX/Y
- 今天看了一下2014蓝桥杯的第七题--六角填数,网上的代码基本都是那些dfs之类的 看得我一脸懵逼,于是乎就自己写了一个直接暴力求解,虽然代码好像有点多
- 1137: 查找最大元素
- 《深入理解linux内核》笔记(一)
- Androdi中的SQLite数据库介绍
- Codeforces 767E 优先队列
- 浏览器的鼠标坐标值获取及pageX、clientX、screenX的差异
- 【转】简单三极管开关电路
- Dp(方案数——背包的升级版)
- 第一章 结构框架(二)
- ARP欺骗DNS欺骗
- UDP简单通信例子
- java8新特性-Lamda表达式
- leetcode解题之463. Island Perimeter Java版(求周长)
- 认识H5中Web Storage