如何为群组中的每个Kinetic.Rect创建点击事件?
让我说我有这个:
var bar1 = new Kinetic.Rect({
x: 0,
y: 100,
width: 400,
height: 10,
fill: 'grey',
stroke: 'black',
strokeWidth: 2
});
var bar2 = new Kinetic.Rect({
x: 0,
y: 100,
width: 400,
height: 10,
fill: 'grey',
stroke: 'black',
strokeWidth: 2
});
有没有办法让两个栏都有相同的点击事件? 可能使用jQuery?
答案 0 :(得分:2)
您可以创建var layer = new Kinetic.Layer();
并向其添加条形图,然后使用.on
layer.add(bar1);
layer.add(bar2);
//...
layer.on('click',function(e) {
//...
//bar1/bar2 is e.targetNode
请参阅http://konvajs.github.io/docs/events/Multi_Event.html
,否则
function handleClick(e) {
//..
//bar1/bar2 is e.target
}
bar1.on("click",handleClick);
bar2.on("click",handleClick);
//...