javascript获取鼠标指针在整个页面中的坐标位置
分类:实例代码
本章节分享一段代码实例,它实现了能够获取鼠标坐标在整个页面中的坐标。
这个坐标也包括滚动条部分的尺寸,代码实例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>前端教程网</title> <style type="text/css"> *{ margin:0px; padding:0px; } body{height:1500px;} #antzone{ width:200px; height:200px; background-color:#ccc; margin:0px auto; position:fixed; left:50%; top:100px; margin-left:-100px; text-align:center; } #show{ width:150px; margin:0px auto; } </style> <script type="text/javascript"> window.onload=function(){ var odiv=document.getElementById("antzone"); function getX(ev) { var ev = ev || window.event; return ev.pageX || ev.clientX + document.body.scrollLeft; } function getY(ev) { var ev = ev || window.event; return ev.pageY || ev.clientY + document.body.scrollTop; } odiv.onmousemove=function(ev){ var ev=window.event||ev; this.innerHTML="X:"+getX(ev)+" Y:"+getY(ev)+""; } } </script> </head> <body> <div id="antzone"></div> </body> </html>
上面的代码实现了我们的要求,下面介绍一下它的实现过程。
一.代码注释:
(1).window.onload=function(){},当文档内容完全加载完毕再去执行函数中的代码。
(2).var odiv=document.getElementById("antzone"),获取id属性值为antzone的元素对象。
(3).function getX(ev){},此方法可以获取鼠标指针的水平坐标位置,参数是事件对象。
(4).var ev = ev || window.event,兼容所有浏览器的事件对象。
(5).return ev.pageX || ev.clientX + document.body.scrollLeft,如果浏览器支持pageX属性,则直接使用此属性,否则就使用在客户区的坐标再加上向左滚动的尺寸。
二.相关阅读:
(1).var ev = ev || window.event可以参阅var ev=window.event||ev的作用是什么一章节。
(2).clientX属性可以参阅javascript clientX一章节。
(3).scrollLeft属性可以参阅js scrollLeft一章节。
一线大厂高级前端编写,前端初中阶面试题,帮助初学者应聘,需要联系微信:javadudu