应用拖动,快速回到原始位置到数组

时间:2015-09-30 21:05:27

标签: actionscript-3 flash air

我正在尝试拖动一个影片剪辑,然后在释放后将其快速恢复到原始位置。我想将此功能应用于具有actionscript3的数组。这是迄今为止的代码:

var dragArray:Array = new Array;
dragArray.push(blockSmalla);
dragArray.push(blockSmallb);
dragArray.push(blockSmallc);
dragArray.push(blockSmalld);
dragArray.push(blockSmalle);

var startPosition:Point;
function drag(e:Event):void {
dragArray[i].startDrag();
startPosition = new Point( dragArray[i].x, dragArray[i].y);
}
function dragStop(e:Event):void {
dragArray[i].stopDrag();

dragArray[i].x = startPosition.x;
dragArray[i].y = startPosition.y;
startPosition = null;
}

for (var i:uint = 0; i < dragArray.length; i++) {
dragArray[i].addEventListener(MouseEvent.MOUSE_DOWN, drag);
dragArray[i].stage.addEventListener(MouseEvent.MOUSE_UP, dragStop);
}

该函数未应用于数组。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我认为null试图告诉您的是,在每个函数范围内,您应该删除var check = 0; $(".link").on('mouseover', function(e) { if(check == 0 ){ // do something check = 1; }else { return false; } }); 并使用dragArray[i]代替。 这是一个简单的解决方法:

e.currentTarget

另请注意,我删除了MouseUp侦听器上的舞台参考。