繁体   English   中英

Createjs拖放-拖放目标未注册

[英]Createjs Drag and drop - drop target isn't registering

我正在尝试拖放。 当我在矩形上释放圆圈时,我似乎无法注册下降。 我该如何解决该问题? 无论我将目标放在舞台上还是在矩形上方,我的目标始终为null。

var rectangle = new createjs.Container();
        rect = new createjs.Shape();
        rect.graphics.beginFill("blue").drawRect(50, 50, 250, 210);
        rect.name = "rectangle";
        rect.x = 300;
        rect.y = 300;
        rectangle.addChild(rect);
        stage.addChild(rectangle);

        circle = new createjs.Shape();
        circle.name = "mycircle";
        circle.graphics.beginFill("red").drawCircle(15, 15, 15);
        circle.x = 15;
        circle.y = 80;


        var dragger = new createjs.Container();

        dragger.addChild(circle);
        dragger.name = "dragger1";
        stage.addChild(dragger);

        dragger.on("pressmove", function (evt) {
            evt.currentTarget.x = evt.stageX;
            evt.currentTarget.y = evt.stageY;
            stage.update();
        });

        dragger.on("pressup", function (evt) {
            var target = dragger.getObjectUnderPoint(evt.rawX, evt.rawY, 0);
            console.log("this is my target");
            console.log(target);

        });

您呼叫dragger.getObjectUnderPoint()这将在返回一个对象dragger是下点。 我猜你想让它返回rect ,它不在dragger 只需运行stage.getObjectUnderPoint()

当然,请注意,如果所拖动的对象在进行检查时位于该点之下,则将返回它。 有很多解决方法,但这是一个单独的主题。

http://jsfiddle.net/gskinner/by3humee/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM