window.screenX/Y
are not supported on IE. But for other browsers, a close approximation of position is:
var top = $("#myelement").offset().top + window.screenY;
var left = $("#myelement").offset().left + window.screenX;
Exact position depends on what toolbars are visible. You can use the outer/innerWidth
and outer/innerHeight
properties of the window
object to approximate a little closer.
IE doesn't provide much in the way of window properties, but oddly enough, a click event object will provide you with the screen location of the click. So I suppose you could have a calibration page which asks the user to "click the red dot" and handle the event with
function calibrate(event){
var top = event.screenY;
var left = event.screenX;
}
Or possibly use the mouseenter/leave
events using the coordinates of that event to calibrate. Though you'd have trouble determining if the mouse entered from the left, right, top, or bottom.
Of course, as soon as they move the screen you'll need to recalibrate.
For lots more on browser property compatibilities see PPK's Object Model tables.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…