1. 程式人生 > >獲取鼠標的位置

獲取鼠標的位置

post class 可能 img clas 元素 win 改變 如果

獲取鼠標位置
1.PageX/PageX:鼠標在頁面上的位置,從頁面左上角開始,即是以頁面為參考點,不隨滑動條移動而變化
2.clientX/clientY:鼠標在頁面上可視區域的位置,從瀏覽器可視區域左上角開始,即是以瀏覽器滑動條此刻的滑動到的位置為參考點,隨滑動條移動 而變化.
可是悲劇的是,PageX只有FF特有,IE這個悲劇沒有啊T_T,所以大牛們想出了一個辦法
PageY=clientY+scrollTop-clientTop;(只討論Y軸,X軸同理,下同)
3.screenX/screenY:鼠標在屏幕上的位置,從屏幕左上角開始(w3c標準)
4.offsetX/offsetY:IE特有,鼠標相比較於觸發事件的元素的位置,以元素盒子模型的內容區域的左上角為參考點,如果有boder,可能出現負值
5.
layerX/layerY:FF特有,鼠標相比較於當前坐標系的位置,即如果觸發元素沒有設置絕對定位或相對定位,以頁面為參考點,如果有,將改變參考坐標系,從觸發元素盒子模型的border區域的左上角為參考點也就是當觸發元素設置了相對或者絕對定位後,layerX和offsetX就幸福地生活在一起^-^,幾乎相等,唯一不同就是一個從border為參考點,一個以內容為參考點

chrome和safari一條龍通殺!完全支持所有屬性.其中(offsetX和layerX都是以border為參考點)

下面這個是獲取相對於屏幕的坐標
document.onmousemove=function(e){e=e? e:window.event;document.writeln("X:"+e.screenX+"Y:"+e.screenY);}

技術分享圖片

獲取鼠標的位置