Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Createjs拖放-拖放目标isn';t注册_Javascript_Html_Drag And Drop_Createjs - Fatal编程技术网

Javascript Createjs拖放-拖放目标isn';t注册

Javascript Createjs拖放-拖放目标isn';t注册,javascript,html,drag-and-drop,createjs,Javascript,Html,Drag And Drop,Createjs,我正在尝试拖放。当我把圆圈放在长方形上时,我似乎记不住一滴。我如何解决这个问题?我的目标总是空的,不管我把它放在舞台上的什么地方或者放在长方形上 var rectangle = new createjs.Container(); rect = new createjs.Shape(); rect.graphics.beginFill("blue").drawRect(50, 50, 250, 210); rect.name = "rectangle

我正在尝试拖放。当我把圆圈放在长方形上时,我似乎记不住一滴。我如何解决这个问题?我的目标总是空的,不管我把它放在舞台上的什么地方或者放在长方形上

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()

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


谢谢!这真的很有帮助