编程语言
首页 > 编程语言> > javascript – 在KineticJS中检测阶段上的点击而不是形状

javascript – 在KineticJS中检测阶段上的点击而不是形状

作者:互联网

在KineticJS中,如何检测单击事件,其中单击发生在对象/形状之外?

我试图让一个Rect在用户点击它时将其比例改为2,当用户点击它之外的任何地方时返回到1的比例.

JSfiddle:http://jsfiddle.net/ABTAD/8/

管理以检测舞台上的点击,但点击Rect也会触发点击处理程序!!!不知怎的,.setScale(1)没有做任何事情,而console.log打印出来的东西.当在Rect而不是空阶段上进行单击时,如何防止单击处理程序触发?

JS Code检测点击阶段

window.stage.getContainer().addEventListener('click', function(e) {
    $.each(window.layer.get('.box'), function(index, box) {
       box.setScale(1);
       console.log('clicked on stage');
    });
});

解决方法:

您可以使用stage.getContent()访问舞台内容包装器.从那里,您可以添加如下事件处理程序:

stage.getContent().addEventListener(‘click’,…); //常规javascript

要么

$(stage.getContent()).on(‘click’,…); // jquery

标签:jquery,javascript,html5,canvas,kineticjs
来源: https://codeday.me/bug/20190620/1246364.html