Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.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 kineticjs将组附加到鼠标_Javascript_Kineticjs - Fatal编程技术网

Javascript kineticjs将组附加到鼠标

Javascript kineticjs将组附加到鼠标,javascript,kineticjs,Javascript,Kineticjs,在kineticJs中,在将组添加到层后,是否可以将组绑定到用户鼠标指针,以便用户可以将组移动到他们希望的位置?然后,他们会单击将其放到该位置。这就是您可以做到的方法。当用户希望将组添加到图层时,将执行以下代码: layer.add(group); layer.draw(); console.log(stage.getMousePosition()); stage.on('mousemove', function (){ var mouse = stage.getMous

在kineticJs中,在将组添加到层后,是否可以将组绑定到用户鼠标指针,以便用户可以将组移动到他们希望的位置?然后,他们会单击将其放到该位置。

这就是您可以做到的方法。当用户希望将组添加到图层时,将执行以下代码:

layer.add(group);
layer.draw();
console.log(stage.getMousePosition());
stage.on('mousemove',
    function (){
        var mouse = stage.getMousePosition();
        group.setX(mouse.x);
        group.setY(mouse.y);
        layer.draw();
    });
stage.on('click',
    function(){
        stage.off('mousemove');
    });

忘了说。要使后台连续获得mousemove事件,请在某个层上绘制一个rect并将其添加到后台,即使不透明度为0,因为它不会在空白区域工作。

您还可以在创建组时将组属性设置为draggable:true,或者在创建组后将其设置为draggable

 <script>
  // make draggable on creation
   var group = new Kinetic.Group({
   draggable: true;
  });

  // make draggable after creation
  group.setDraggable(true);
 </script>

//在创建时使可拖动
var组=新的动力学组({
可拖动:正确;
});
//创建后使可拖动
group.SetDragable(真);
此外,您还可以在使用相同方法移动组后关闭拖动


您可以直接将其添加到您创建的组对象中,而不是在虚拟阶段对象上添加事件处理程序。感谢您发布您的答案!请务必仔细阅读本手册。还请注意,每次链接到自己的网站/产品时,都需要发布免责声明。