js鼠標(biāo)坐標(biāo)獲取常用的三個(gè)方法
js提供了多個(gè)獲取鼠標(biāo)點(diǎn)擊事件的坐標(biāo)獲取方法
1.相當(dāng)于你點(diǎn)擊的元素來說 (e.offsetX和e.offsetY)
就是以你點(diǎn)擊的元素的左上角作為參考系源點(diǎn)獲取鼠標(biāo)在元素中點(diǎn)擊的位置
<style> div{ width: 300px; height: 300px; background-color: rebeccapurple; color: wheat; margin: 300px auto; } </style> <body> <div>我的橫坐標(biāo)x:,我的縱坐標(biāo)y:</div> </body> <script> var oDiv = document.querySelector('div') oDiv.onclick = function (e) { console.log(e.offsetX) console.log(e.offsetY) // 渲染函數(shù) oDiv.innerHTML = '相對于我點(diǎn)擊的這個(gè)元素來講我的橫坐標(biāo)x:' + e.offsetX + ',我的縱 坐標(biāo)y:' + e.offsetY } </script>
在給div添加點(diǎn)擊事件,在點(diǎn)擊事件中傳入事件源e,e中保存著鼠標(biāo)的點(diǎn)擊坐標(biāo),我們用offsetX和offsetY就可以獲取到鼠標(biāo)在div中的點(diǎn)擊坐標(biāo)。
2.相對于瀏覽器可視窗口來說(e.clientX和e.clientY)
可視窗口是指瀏覽器能夠看到內(nèi)容的窗口,隨著滾動條移動,可視窗口的位置也在隨著變化,但是都是在以可視窗口的左上角的位置為參考系來獲取鼠標(biāo)的點(diǎn)擊位置
oDiv.onclick = function (e) { console.log(e.clientX) console.log(e.clientY) // 渲染函數(shù) oDiv.innerHTML = '相對于瀏覽器可視窗口來講我的橫坐標(biāo)x:' + e.clientX + ',我的縱坐標(biāo)y:' + e.clientY }
3.以頁面左上角作為參考系(e.pageX 和 e.pageY)
以頁面作為為參考系,與可視窗口不一樣,是以整個(gè)頁面的左上角作為參考系,不隨滾動條改變而改變,就是一開始頁面的左上角。
oDiv.onclick = function (e) { console.log(e.pageX) console.log(e.pageY) // 渲染函數(shù) oDiv.innerHTML = '相對于頁面來講我的橫坐標(biāo)x:' + e.pageX + ',我的縱坐標(biāo)y:' + e.pageY }
總結(jié)
到此這篇關(guān)于js鼠標(biāo)坐標(biāo)獲取常用的三個(gè)方法的文章就介紹到這了,更多相關(guān)js獲取鼠標(biāo)坐標(biāo)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript使用WebSocket實(shí)現(xiàn)實(shí)時(shí)通信的技術(shù)詳解
WebSocket作為一種高效的通信協(xié)議,為開發(fā)者提供了一種在客戶端和服務(wù)器之間進(jìn)行全雙工通信的方法,本文將深入探討WebSocket技術(shù),并提供實(shí)戰(zhàn)代碼示例2024-04-04淺談使用MVC模式進(jìn)行JavaScript程序開發(fā)
這篇文章主要介紹了淺談使用MVC模式進(jìn)行JavaScript程序開發(fā),同時(shí)也介紹了一些JavaScript的MVC框架,需要的朋友可以參考下2015-11-11使用JavaScript優(yōu)雅實(shí)現(xiàn)文本展開收起功能
這篇文章主要為大家詳細(xì)介紹了如何使用JavaScript優(yōu)雅實(shí)現(xiàn)文本展開收起功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04