Я бы изменил это на что-то вроде следующего:
mcMXredBox.addEventListener(MouseEvent.MOUSE_DOWN, pressed);
var initMouseX;
function moved(e:Event):void{
this.width += (mouseX - initMouseX);
initMouseX = mouseX;
}
function pressed(e:MouseEvent):void{
initMouseX = mouseX;
stage.addEventListener(MouseEvent.MOUSE_UP, released);
stage.addEventListener(MouseEvent.MOUSE_MOVE, moved);
moved(e);
}
function released(e:MouseEvent):void{
stage.removeEventListener(MouseEvent.MOUSE_UP, released);
stage.removeEventListener(MouseEvent.MOUSE_MOVE, moved);
}
Добавляя слушателей, когда мышь нажата (и удаляя их, когда отпущено), вам больше не нужно опрашивать, чтобы увидеть,мышь не работает, так что это сохранит производительность, если не перетаскивать.Добавление на сцену решит вашу проблему не регистрироваться, когда мышь больше не находится над объектом.Наконец, есть некоторые хитрости в разработке математики перетаскивания.