2010-07-27 2 views
14

работы с мышью в JavaScript, я иногда встречал следующие атрибуты событий:положение мыши - совместимость Cross-браузер - Javascript

  • clientX, clientY
  • Layerx, layerY
  • OffsetX , offsetY
  • страницаX, страницаY
  • ScreenX, Screeny
  • х, у

мне интересно, что их совместимость с различными браузерами выглядит в общем, как я только нашел биты и куски информации, которые я пытаясь исправить вместе.

Спасибо, ребята

ответ

10

Вот как JQuery делает это:

// 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 pageX (или Пейджи) или вычислить его из clientX и scrollLeft анс clientLeft

+0

благодаря не ответ, который я искал , но увы ... ОЧЕНЬ ПОЛЕЗНЫЙ! Благодаря! знак равно – RadiantHex

Смежные вопросы