2010-07-27 13 views
14

lavorare con il mouse all'interno Javascript ho occasionalmente incontrato attribuisce il seguente evento:posizione del mouse - la compatibilità del browser Cross - Javascript

  • clientX, clientY
  • layerX, layerY
  • offsetX , offsetY
  • paginaX, paginaY
  • screenX, screenY
  • x, y

Mi chiedo quale sia il loro compatibilità cross-browser sembra in generale, come ho trovato solo frammenti di informazioni che sto cercando di rattoppare insieme.

Grazie ragazzi

risposta

10

Ecco come jQuery fa:

// 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 (o Pagey) o nel calcolo da clientX e scrollLeft ans ClientLeft

+0

grazie non è la risposta che cercavo , ma ahimè ... MOLTO UTILE! Grazie! =) – RadiantHex

Problemi correlati