I'm using jQuery to capture an event:
$('input').focus(function(e){
console.log( e.pageX, e.pageY );
});
This doesn't seem to work... any ideas on alternative ways to getting the mouse position?
Help would be great.
I'm using jQuery to capture an event:
$('input').focus(function(e){
console.log( e.pageX, e.pageY );
});
This doesn't seem to work... any ideas on alternative ways to getting the mouse position?
Help would be great.
You can only get mouse coordinates using mouse events. If you want to capture the position of the mouse, you can use a global mousemove event listener, and store the coordinates in a set of variables, which can later be accessed by the focus function. Example:
var pageX, pageY; //Declare these globally
$(window).mousemove(function(e){
pagex = e.pageX;
pageY = e.pageY;
});
$('input').focus(function(){
console.log(pageX, pageY); // These variables have been defined by the global
// mousemove event
});
If you're trying to get the position relative to the element, try something like this instead:
$("input").focus(function(e){
var relativeX = e.pageX - this.offsetLeft;
var relativeY = e.pageY - this.offsetTop;
});