El problema
En muchas páginas web habrás visto como el cursor va perseguido por un texto, o como se abre un cuadro junto al cursor al pasarlo por un enlace u otros efectos parecidos. En todos ellos es fundamental poder leer donde se encuentra el ratón cuando se dispara el evento que produce el efecto.
  

La solución
Para conocer la posición del ratón al ocurrir un evento basta con leer las propiedades del objeto event. Este objeto es el que contiene información sobre los eventos, como el que ocurre al pulsar el botón del ratón (onclick, onmousedown) al mover el ratón sobre un elemento (onmouseover), al salir de un elemento (onmouseout) . En el caso de Internet Explorer de Microsoft las propiedades que nos interesan son: event.clientY para la posición vertical (medida desde el margen superior de la página) y event.clientX para la posición horizontal (medida desde el margen izquierdo de la página). Estas posiciones deben ser incrementadas con el valor del desplazamiento vertical (document.body.scrollTop) y horizontal (document.body.scrollLeft). Para Netscape la cosa es algo más simple pues basta con las propiedades event.pageX para la conocer la posición horizontal y event.pageY para la vertical, sin necesidad de ningún tipo de corrección.

Un caso práctico

Con este ejemplo podrás leer en la barra de estado las posición del ratón mientras lo mueves por la pantalla

function posCursor(ev)
{
var px, py, cadena, obj;
if (!document.all)
       {
       event = ev;
       py = ev.pageY;
       px = ev.pageX;
       }
else{
       py = event.clientY +document.body.scrollTop;
       px = event.clientX +document.body.scrollLeft;
       }
window.status = "X: "+px+" Y: "+py;
}

En la página de prueba captura el movimiento del ratón mediante el siguiente código en la etiqueta body:

<body onmousemove="posCursor(event)">

Observa la diferencia entre MSIE y Netscape a la hora de manejar el objeto event. Mientras el explroador de Microsoft reconoce el objeto event como un objeto global, Netscape lo reconoce como un argumento de la función que maneja el evento.