原生js獲取滑鼠座標方法全面講解 zmq

2022-09-03 01:39:10 字數 956 閱讀 4178

原生js獲取滑鼠座標方法全面講解:

clientx/y,pagex/y,offsetx/y,layerx/y,screenx/y

一、關於js滑鼠事件綜合各大瀏覽器能獲取到座標的屬性總共以下五種:

event.clientx/y

event.pagex/y

event.offsetx/y

event.layerx/y

event.screenx/y

二、分別講解如下:

clientx/y:

clientx/y獲取到的是觸發點相對瀏覽器可視區域左上角距離,不隨頁面滾動而改變

相容性:所有瀏覽器均支援

pagex/y:

pagex/y獲取到的是觸發點相對文件區域左上角距離,會隨著頁面滾動而改變

相容性:除ie6/7/8不支援外,其餘瀏覽器均支援

offsetx/y:

offsetx/y獲取到是觸發點相對被觸發dom的左上角距離,不過左上角基準點在不同瀏覽器中有區別,其中在ie中以內容區左上角為基準點不包括邊框,如果觸發點在邊框上會返回負值,而chrome中以邊框左上角為基準點。

相容性:ie所有版本,chrome,safari均完美支援,firefox不支援

layerx/y:

layerx/y獲取到的是觸發點相對被觸發dom左上角的距離,數值與offsetx/y相同,這個變數就是firefox用來替代offsetx/y的,基準點為邊框左上角,但是有個條件就是,被觸發的dom需要設定為position:relative或者position:absolute,否則會返回相對html文件區域左上角的距離

相容性:ie6/7/8不支援,opera不支援,ie9/10和chrome、safari均支援

screenx/y:

screenx/y獲取到的是觸發點相對顯示器螢幕左上角的距離,不隨頁面滾動而改變

相容性:所有瀏覽器均支援

js如何獲取滑鼠當前座標?

在進行業務功能實現時,有時需要根據滑鼠當前位置進行一定的操作。那麼該如何獲取到滑鼠當前的位置呢?經過一番嘗試與查詢,找到乙個比較便捷的方法,在此進行記錄 let sh window.pageyoffset document.documentelement.scrolltop document.bod...

JS 常用位置 和 尺寸 獲取 滑鼠的座標

innerwidth 文件顯示區域 寬 innerheight 文件顯示區域 高 outwidth 瀏覽器整個寬 outheight 瀏覽器整個高 screenx screenleft 瀏覽器裡螢幕左上角距離的x座標 screeny screentop 瀏覽器裡螢幕左上角距離的y座標 尺寸 elem...

原生JS獲取DOM元素的方法

js獲取dom元素的方法 8種 通過id獲取 getelementbyid 通過name屬性 getelementsbyname 通過標籤名 getelementsbytagname 通過類名 getelementsbyclassname 通過選擇器獲取乙個元素 queryselector 通過選擇...