나는 두 개의 영화 클립을 가지고 있는데, 하나는 ltr, 다른 하나는 ltrTarget입니다. 그들은 둘 다 서로 옆에있는 원입니다. 이건 내 코드입니다 : 내가 LTR을을 드래그합니다 및 ltrTarget 이외의 장소에 드롭 할 때, 이제Actionscript 3 - dropTarget not working
import flash.geom.Point;
ltr.addEventListener(MouseEvent.MOUSE_DOWN, pickup);
ltr.addEventListener(MouseEvent.MOUSE_UP, place);
var startingLocation = new Point();
function pickup(evt:MouseEvent):void {
startingLocation.x = evt.target.x;
startingLocation.y = evt.target.y;
evt.target.startDrag();
}
function place(evt:MouseEvent):void {
evt.target.stopDrag();
trace(evt.target.dropTarget);
if (evt.target.dropTarget == ltrTarget) {
evt.target.x = ltrTarget.x;
evt.target.y = ltrTarget.y;
} else {
evt.target.x = startingLocation.x;
evt.target.y = startingLocation.y;
}
}
, 그것은 '널'을 추적하고 정확한 원래 위치로 재설정 (startingLocation으로 다시). 그러나 그것을 ltrTarget 위에 떨어 뜨리면 '[Object Shape]'을 추적하지만 ltrTarget의 x 및 y 위치를 가져 오는 대신 startLocation으로 다시 재설정됩니다.
나는trace(evt.target.dropTarget.name);
에
trace(evt.target.dropTarget);
을 변경하고 나는 그것을 ltrTarget의 더 상단을 배치하지 않을 때, 그것은 'INSTANCE1는'추적합니다. ltr의 x 및 y 위치가 ltrTarget 위에 ltr을 놓을 때 ltrTarget의 x 및 y 위치가되지 않는 이유는 무엇입니까?