2010-07-27 9 views
14

làm việc với chuột trong Javascript Tôi đã thỉnh thoảng gặp trường hợp thuộc tính sau đây:Chuột vị trí - tương thích trình duyệt chéo - Javascript

  • clientX, clientY
  • layerX, layerY
  • OffsetX , offsetY
  • trangX, pageY
  • screenX, Screeny
  • x, y

Tôi đang tự hỏi những gì tương thích qua trình duyệt của họ trông giống như nói chung, như tôi đã chỉ tìm thấy bit và mẩu thông tin mà tôi cố gắng chắp vá lại với nhau.

Thanks guys

Trả lời

10

Sau đây là cách jQuery làm nó:

// Calculate pageX/Y if missing and clientX/Y available 
if (event.pageX == null && event.clientX != null) { 
    var doc = document.documentElement, body = document.body; 
    event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0); 
    event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0); 
} 

Testing Trang X (hoặc Trang Y) hoặc tính toán nó từ clientX và scrollLeft ans clientLeft

+0

nhờ không phải là câu trả lời tôi đang tìm kiếm , nhưng than ôi ... rất có ích! Cảm ơn! =) – RadiantHex