日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

HTML 鼠标坐标和元素坐标

發布時間:2024/9/5 HTML 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTML 鼠标坐标和元素坐标 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在這一篇文章中,將會介紹鼠標坐標、元素坐標以及鼠標在指定元素內的坐標。

?

1. 鼠標坐標

在觸發鼠標相關事件時(如:click、mousemove),可以通過事件對象獲取當前鼠標的坐標。

獲取的坐標可分為2種:

1)?MouseEvent.screenX、MouseEvent.screenY :基于屏幕的X、Y坐標;以屏幕的左上角為0,0起始點。

?

2)?MouseEvent.clientX、MouseEvent.clientY :基于body的X、Y坐標;以當前body的左上角為0,0起始點,若body含有水平滾動條或垂直滾動條時,左上角還是0,0坐標點。

?

?

2. ?元素的坐標

元素的getBoundingClientRect()方法可獲取一個?ClientRect 對象,其描述了元素的方位和寬高等信息。

2.1 ClientRect對象屬性

屬性名稱屬性說明
width元素的寬度
height元素的高度
left?元素左上角距離當前可視body的寬度
top元素左上角距離當前可視body的高度
right元素右下角距離當前可視body的寬度;right =?left +?width
bottom元素右下角距離當前可視body的高度;bottom =?top +?height

?

2.2 圖示

?

2.3 其他坐標

除了這些直接屬性外,還可以結合其他元素獲取更詳細的坐標:

1)?元素左上角在整體body的水平坐標 =?document.body.scrollLeft + element.getBoundingClientRect().left;

2) 元素左上角在整體body的垂直坐標 =?document.body.scrollTop + element.getBoundingClientRect().top;

?

3. 鼠標在元素內的坐標

通過之前學到的獲取鼠標坐標和元素坐標后,還可進一步獲取鼠標在元素內的坐標。

以鼠標在元素內的x坐標為例,等于鼠標的 clientX 減去 元素的getBoundingClientRect()放的left,最后在加上元素的scrollLeft的值。

公式如下

x = mouse.clientX - element.left + element.scrollLeft

y = mouse.clientY - element.top + element.scrollTop

示例

?

End Web開發之路系列文章 菜單加載中...

轉載于:https://www.cnblogs.com/polk6/p/6624779.html

總結

以上是生活随笔為你收集整理的HTML 鼠标坐标和元素坐标的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。