你可能认为如果你调用了一次scale(),然后再调用一次scale(),结果会累加,但事实并非如此。似乎如果你调用了scale(),它会记住原始尺寸并缩放那些尺寸,而不是之前重新计算的尺寸。我让你的示例起作用的方法是在对象上存储比例(每个维度一个变量)(从scaleX = scaleY = 1开始)。然后,我将存储的比例乘以从调整大小器/光标的最终位置计算出的比例,并将其存储在您的对象中。最后,在scale()函数调用中使用存储的比例来调整形状的大小。请参见http://jsfiddle.net/donniec/JAVWN/2/。