簡體   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