Hello i want to ask whether can we capture time or speed for mouse movement..if can...can anybody help me please...
You can track coordinates, if you trigger some kind of onChange event for the coordinates then you can track the number of times they change and therefore the speed. http://www.js-examples.com/javascript/?run=362
how dave?? i have track the mouse movemnet coordinate..but i still donno how to find time and speed...below is my tracking mouse script... <html> <body> <script type=text/javascript> // Set Netscape up to run the "captureMousePosition" function whenever // the mouse is moved. For Internet Explorer and Netscape 6, you can capture // the movement a little easier. if (document.layers) { // Netscape document.captureEvents(Event.MOUSEMOVE); document.onmousemove = captureMousePosition; } else if (document.all) { // Internet Explorer document.onmousemove = captureMousePosition; } else if (document.getElementById) { // Netcsape 6 document.onmousemove = captureMousePosition; } // Global variables xMousePos = 0; // Horizontal position of the mouse on the screen yMousePos = 0; // Vertical position of the mouse on the screen xMousePosMax = 0; // Width of the page yMousePosMax = 0; // Height of the page function captureMousePosition(e) { if (document.layers) { // When the page scrolls in Netscape, the event's mouse position // reflects the absolute position on the screen. innerHight/Width // is the position from the top/left of the screen that the user is // looking at. pageX/YOffset is the amount that the user has // scrolled into the page. So the values will be in relation to // each other as the total offsets into the page, no matter if // the user has scrolled or not. xMousePos = e.pageX; yMousePos = e.pageY; xMousePosMax = window.innerWidth+window.pageXOffset; yMousePosMax = window.innerHeight+window.pageYOffset; } else if (document.all) { // When the page scrolls in IE, the event's mouse position // reflects the position from the top/left of the screen the // user is looking at. scrollLeft/Top is the amount the user // has scrolled into the page. clientWidth/Height is the height/ // width of the current page the user is looking at. So, to be // consistent with Netscape (above), add the scroll offsets to // both so we end up with an absolute value on the page, no // matter if the user has scrolled or not. xMousePos = window.event.x+document.body.scrollLeft; yMousePos = window.event.y+document.body.scrollTop; xMousePosMax = document.body.clientWidth+document.body.scrollLeft; yMousePosMax = document.body.clientHeight+document.body.scrollTop; } else if (document.getElementById) { // Netscape 6 behaves the same as Netscape 4 in this regard xMousePos = e.pageX; yMousePos = e.pageY; xMousePosMax = window.innerWidth+window.pageXOffset; yMousePosMax = window.innerHeight+window.pageYOffset; } top.leftFrame.location='simpan.php?xMousePos=' + xMousePos + ' ,yMousePos=' + yMousePos + ', xMousePosMax=' + xMousePosMax + ' ,yMousePosMax=' + yMousePosMax; return true; } </script> </body> </html> PHP:
please why dont any one help me....i need to get time went mouse is move untill it stop...please...any javascript expert??
The way I would do it is to define some sort of "tick" interval. Lets say 10 milliseconds. Have an array of length 5 or something, which holds the last 5 known mouse co-ordinates. On each tick (which you can trigger with a recursively called JS function using setTimeout), add the current mouse-coordinates to the array, and remove the 5th (easy to do, check out google for getting current mouse co-ords). Also on each tick, perform some sort of moving average function on the mouse-cordinates so you can see how many euclidian pixels each co-ordinate is separated by (easily done with a bit of pythagoras). Since you know the average number of pixels travelled in the tick, and the duration of the tick (10 milliseconds), you can calculate the speed of the mouse in pixels per second. Also, define a stationary constant (2px lets say) and compare this to the moving average of the last 5 co-ordinates to determine if the mouse is currently stationary (or at least, moving extreeeeemly slowly)... If you want to be really clever, you could work out their screen resolution and monitor size, and translate each pixel into inches, or even miles. Then you can get a miles per hour speed... Hope that helps.