function getMouseCoordsWithinEventTarget(event) { var coords = { x: 0, y: 0}; if(!event) // then we have a non-DOM (probably IE) browser { event = window.event; coords.x = event.offsetX; coords.y = event.offsetY; } else // we assume DOM modeled javascript { var Element = event.target ; var CalculatedTotalOffsetLeft = 0; var CalculatedTotalOffsetTop = 0 ; while (Element.offsetParent) { CalculatedTotalOffsetLeft += Element.offsetLeft ; CalculatedTotalOffsetTop += Element.offsetTop ; Element = Element.offsetParent ; } coords.x = event.pageX - CalculatedTotalOffsetLeft ; coords.y = event.pageY - CalculatedTotalOffsetTop ; } return coords; }