我正在使用this example创建画布等。我想做的是通过单击按钮移动yodaGroupyodaImage的位置。有没有人做过或知道如何做?

这是我的位置。

    var yodaGroup = new Kinetic.Group({
      x: 250,
      y: 30,
      draggable: true
    });


我想为上面的yodaGroup调整或添加到x和y坐标
使用单击按钮触发以下功能

//需要弄清楚这个函数
这只是一个示例,因为我不知道如何为上面的yodaGroup定义,因为它没有绑定的ID或类。

   function left() {
      yodaGroup.x += 5; // move image by 5px
   }

最佳答案

有一种比设置位置更简单的方法。其.move()函数。

.move(x,y)在对象上移动给定的数量x和y。

所以这可能是:

function left() {
   yodaGroup.move(-5,0);
}
function right() {
   yodaGroup.move(5,0);
}
function up() {
   yodaGroup.move(0,-5); //negative is up in canvas
}
function down() {
   yodaGroup.move(0,5); //positive is down in canvas
}


这比两次调用getPosition并在之后设置位置要快得多。
另外,setPosition比移动需要更多的资源和处理。

http://kineticjs.com/docs/symbols/Kinetic.Node.php#move

07-25 20:54