在KineticJS中,如何检测在对象/形状外发生咔嗒声的Click
事件?
我试图让Rect
在用户点击时将其比例更改为2
,并在用户点击其外的任何位置时返回到1
的比例
JSfiddle: http://jsfiddle.net/ABTAD/8/
管理以检测舞台上的点击,但点击Rect
也会触发点击处理程序!不知怎的,.setScale(1)
没有做任何事情,而console.log
打出了一些东西。如果在Rect
而不是空白阶段进行点击,如何防止点击处理程序触发?
用于检测点击阶段的JS代码
window.stage.getContainer().addEventListener('click', function(e) {
$.each(window.layer.get('.box'), function(index, box) {
box.setScale(1);
console.log('clicked on stage');
});
});
答案 0 :(得分:5)
您可以使用stage.getContent()访问舞台内容包装器。从那里,您可以添加如下的事件处理程序:
stage.getContent()。addEventListener('click',...); //常规javascript
或
$(stage.getContent())。on('click',...); // jquery