国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js實現獲取鼠標當前的位置

2019-11-19 18:29:03
字體:
來源:轉載
供稿:網友

有時候,我們需要得到窗口拖動或者鼠標移動的距離,此時可以通過計算鼠標前后在頁面中的位置來得到想要的結果,下面介紹幾個事件屬性:

1、客戶區坐標位置

鼠標事件都是在瀏覽器視口中的特定位置上發生的。這個位置信息保存在事件對象的 clientX 和 clientY 屬性中。它們的值表示事件發生時鼠標指針在視口中的水平垂直坐標(不包括頁面滾動的距離)。如下圖所示:

var div = document.getElementById("myDiv"); //獲取元素EventUtil.on(div, "click", function(event){ event = EventUtil.getEvent(event); alert("Screen coordinates: " + event.screenX + "," + event.screenY);});

:其中,EventUtil.on()表示為元素綁定事件,EventUtil.getEvent(event)表示獲取事件對象。EventUtil是自定義的事件對象(使用JavaScript實現),里面包含了一些跨瀏覽器的方法,具體實現,請看另一篇文章《js 實現一些跨瀏覽器的事件方法詳解及實例》。如果項目使用了jQuery插件,可相應的替換成對應的方法。

2、頁面坐標位置

事件對象屬性pageXpageY,能告訴你事件是在頁面中的什么位置發生的。換句話說,這兩個屬性表示鼠標光標在頁面中的位置(相當于鼠標在窗口中的位置坐標 + 頁面滾動的距離)。

var div = document.getElementById("myDiv");//獲取id為"myDiv"的元素EventUtil.on(div, "click", function(event){//為元素綁定click事件 event = EventUtil.getEvent(event);//獲取event事件對象 var pageX = event.pageX,pageY = event.pageY; if (pageX === undefined){//IE8及更早版本 pageX = event.clientX + (document.body.scrollLeft || document.documentElement.scrollLeft); } if (pageY === undefined){ pageY = event.clientY + (document.body.scrollTop || document.documentElement.scrollTop); } alert("Page coordinates: " + pageX + "," + pageY);});

3、屏幕坐標位置

通過screenXscreenY屬性就可以確定鼠標事件發生時鼠標指針相對于整個屏幕的坐標信息。如下圖所示:

var div = document.getElementById("myDiv");EventUtil.on(div, "click", function(event){ event = EventUtil.getEvent(event); alert("Screen coordinates: " + event.screenX + "," + event.screenY);});

文章參考自《JavaScript高級程序設計第三版

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霍州市| 筠连县| 南皮县| 浦江县| 石城县| 中西区| 襄樊市| 扎赉特旗| 湘阴县| 西昌市| 昌都县| 龙里县| 海南省| 织金县| 舞阳县| 孟州市| 上犹县| 陇南市| 洪江市| 化德县| 巴中市| 通江县| 含山县| 天全县| 无锡市| 仙桃市| 长寿区| 云和县| 平陆县| 合川市| 新安县| 合肥市| 尚义县| 加查县| 岱山县| 长汀县| 新野县| 泸溪县| 鄄城县| 临桂县| 左贡县|