JavaScript獲取滑鼠指標座標詳解
實際應用中可能需要獲取滑鼠指標在頁面中的座標,下面就通過程式碼例項介紹一下如何實現此功能。
在標準瀏覽器中可以使用事件物件的pageX和pageY獲取,在IE8和IE8以下瀏覽器中不支援。
程式碼如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> .tip{ width:200px; border:2px solid #ddd; padding:8px; background:#f1f1f1; color:#666; } #antzone{ width:1000px; height:1000px; background:#ccc; } </style> <script type="text/javascript"> function getMousePos(ev) { var scrollX = document.documentElement.scrollLeft; var scrollY = document.documentElement.scrollTop; var x = ev.pageX || ev.clientX + scrollX; var y = ev.pageY || ev.clientY + scrollY; return { 'x': x, 'y': y }; } function done(ev){ document.getElementById("show").innerHTML=getMousePos(ev).x+','+getMousePos(ev).y; }; window.onload=function(){ var odiv=document.getElementById("antzone"); odiv.onmousemove=function(ev){ var ev=window.event||ev; done(ev); } } </script> </head> <body> <div id="show" class="tip">獲取滑鼠點選位置座標</div> <div id="antzone"></div> </body> </html>
上面的實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).function getMousePos(ev){},此函式可以獲取滑鼠在頁面中的座標,引數是事件物件。
(2).var scrollX = document.documentElement.scrollLeft ,頁面向左滾動的尺寸;頁面被左側遮擋的尺寸。
(3).var scrollY = document.documentElement.scrollTop ,和上面同樣的道理,只是方位不同。
(4).var x = ev.pageX || ev.clientX + scrollX,如果當前瀏覽器支援ev.pageX,就採用此屬性,否則使用ev.clientX + scrollX相容;獲取指標在頁面中x軸座標。
(5).var y = ev.pageY || ev.clientY + scrollY,和上面是同樣的道理。
(6).return { 'x': x, 'y': y },返回一個物件直接量,儲存相關座標。
(7).function done(ev){},將座標寫入指定的div,引數是事件物件。
(8).window.onload=function(){},文件內容完全載入完畢再去執行函式中的程式碼。
(9).var odiv=document.getElementById("antzone"),獲取div物件。
(10).odiv.onmousemove=function(ev),為div註冊onmousemove事件處理函式。
(11).var ev=window.event||ev,事件物件相容處理。
二.相關閱讀:
(1).document.documentElement.scrollTop參閱JavaScript scrollTop一章節。
(2).clientX屬性參閱JavaScript clientX一章節。
(3).var ev=window.event||ev參閱var ev=window.event||ev的作用是什麼一章節。
相關文章
- JavaScript獲取滑鼠在文件中座標JavaScript
- JavaScript-滑鼠獲取頁面座標JavaScript
- JavaScript獲取滑鼠在元素中的座標JavaScript
- 使用js獲取滑鼠座標JS
- JavaScript獲取元素在文件中座標JavaScript
- JavaScript 獲取div在頁面中座標JavaScript
- 觸控事件獲取座標事件
- 透過滑鼠事件獲取滑鼠位置在3d中的座標mouse/Raycaster事件3DAST
- 指標詳解指標
- 詳解c++指標的指標和指標的引用C++指標
- OpenGL 座標系統詳解
- Vue中使用MouseMove事件 獲取滑鼠座標頻率降低或事件卡頓Vue事件
- 物體物件在螢幕中的座標及滑鼠座標物件
- JavaScript 空間座標JavaScript
- javascript頁面元素座標JavaScript
- CSS自定義滑鼠指標CSS指標
- 【CSS: cursor】滑鼠游標指標樣式大全CSS指標
- 百度地圖:根據位置獲取座標地圖
- Java 獲取Excel分頁座標位置(單元格)JavaExcel
- 指標的詳細講解指標
- JavaScript 獲取指定標籤一級子元素JavaScript
- C語言指標詳解(一)C語言指標
- C語言指標詳解(二)C語言指標
- c++ 智慧指標用法詳解C++指標
- JavaScript(1)之——this指標JavaScript指標
- win10怎麼更改滑鼠指標樣式_win10滑鼠指標怎麼美化Win10指標
- fedora系統怎麼設定滑鼠指標大小?fedora滑鼠指標設定大小的教程指標
- win10如何修改滑鼠指標方案_win10更改滑鼠指標主題方案教程Win10指標
- win10滑鼠指標美化設定在哪 修改滑鼠指標樣式的具體方法Win10指標
- CSS設定滑鼠指標形狀CSS指標
- flutter 總結: 通過 GlobalKey 獲取介面任意元素座標尺寸Flutter
- Java 獲取Excel中圖片所在的行、列座標位置JavaExcel
- webgl入門(3)-座標系與滑鼠互動Web
- win10滑鼠指標怎麼隱藏 win10隱藏滑鼠指標的步驟Win10指標
- win10怎麼調整滑鼠指標_win10怎麼更改滑鼠指標圖案Win10指標
- Mac滑鼠游標消失怎麼辦?蘋果電腦滑鼠指標不顯示的解決方法Mac蘋果指標
- AUTOCAD——座標標註
- 陣列,函式與指標 詳解陣列函式指標
- win10 怎麼改變滑鼠指標_怎樣修改Windows10系統的滑鼠指標Win10指標Windows