我有一个问题,我在过去的一个小时里一直在努力解决,但没有成功。下面是完整的代码:http://jsfiddle.net/apbEX/4/
问题:当我使用updatePoint函数时,point.x (和point.y)没有明显的原因是NaN,因此它没有绘制点。但是如果你注释掉函数updatePoints,它通常会绘制点(point.x和y具有正确的值)。这意味着update函数一定有问题,但我看不出有任何错误,并且我在过去使用此函数时没有出现任何问题。
任何帮助都将不胜感激!
更新函数:
function updatePoint(point) {
console.log(pointList[10].x)
point.eX = pageX - offLeft;
point.eY = pageY - offTop;
var dx = (point.eX - point.origPosX);
var dy = (point.eY - point.origPosY);
var mag = Math.sqrt(dx * dx + dy * dy);
point.velocityX = (dx / mag) * point.speed;
point.velocityY = (dy / mag) * point.speed;
point.x += point.velocityX;
point.y += point.velocityY;
} 发布于 2013-07-13 22:12:54
当页面加载时,当您最初调用"draw“时,变量"pageX”和"pageY“还没有从"mousemove”事件处理程序中初始化;此时这些事件都不会发生。
Here is an updated (working?) version of your fiddle.我所做的重要改变是:
var pageX = 0;
var pageY = 0;我还做了一些小改动,以使代码在小提琴上下文中正常工作。
https://stackoverflow.com/questions/17630815
复制相似问题