程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> JS獲取鼠標當前位置坐標,兼容IE,Firefox

JS獲取鼠標當前位置坐標,兼容IE,Firefox

編輯:PHP綜合

JS獲取鼠標當前位置的坐標,兼容IE,Firefox浏覽器。

   這幾天在用JS繪制一棵功能強大的樹。其中實現了每個樹節點的拖拽及各個節點之間的交互,期間需要獲取鼠標的當前位置的坐標,這個坐標是相對於整個document內容的。

   由於IE和FF等浏覽器獲取鼠標時對JS的解釋不同,因此我們要構造一個可以兼容大多數浏覽器的獲取方式。經過測試,下面的方式兼容了IE(類似IE6等低版本浏覽器請無視)、FireFox、Chrome等目前主流的浏覽器。

   

function mousePosition(evt){
    var xPos,yPos;         
    evt=evt || window.event;
    if(evt.pageX){         
        xPos=evt.pageX;         
        yPos=evt.pageY;     
    } else {         
        xPos=evt.clientX+document.body.scrollLeft -document.body.clientLeft;
        yPos=evt.clientY+document.body.scrollTop-document.body.clientTop;     
    }
    return [xPos, yPos];
}
         
// evt為已知已觸發的事件
var _mousePosition = mousePosition(evt);
evt.pageX = _mousePosition[0]; // 鼠標的X坐標
evt.pageY = _mousePosition[1]; // 鼠標的Y坐標
         
// 使用evt的pageX和pageY做其他事情...
*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved