slight modifications, now using onmousemove.