事件处理如何在KinecticJs中发挥作用

时间:2013-09-24 09:31:45

标签: kineticjs

Canvas Container接受输入(例如鼠标[over,up,down]等),Kinetic JS如何识别它已经点击场景中的特定节点以及它如何维护堆栈信息意味着如果多个元素将采用哪个元素相交

1 个答案:

答案 0 :(得分:0)

您可以通过执行以下操作来检测单击了哪个节点:

layer.on('click', function(e) {
  var node = e.targetNode;
  alert(node.getName());
});

回答你的另一个问题,当多个元素相交时,位于顶部的元素将检测鼠标事件。

您可以使用moveToTop()功能将元素移到顶部以便能够检测元素http://kineticjs.com/docs/Kinetic.Node.html#moveToTop

circle.on('dragmove', function() {
  this.moveToTop();
});

请参阅下面的JSFiddle以获取示例。

JSFIDDLE

另外,请检查getIntersection()方法http://kineticjs.com/docs/Kinetic.Stage.html#getIntersection以查看与点相交的元素。