Events KineticJS:单击背景层在绘制后停止激发

Events KineticJS:单击背景层在绘制后停止激发,events,kineticjs,Events,Kineticjs,KineticJS似乎在重新绘制舞台后处理背景层上的点击时存在问题 我有一个JSFIDLE,其中有一个关于这个问题的最小示例 在第34行,我有: stage.draw() 如果这被注释掉,事件将按其应该的方式触发。当出现这种情况时,将单击事件拖到后台后将停止触发 我知道在这个例子中,我没有做任何需要我重新绘制舞台的事情,但在我的项目中,我使用dragstart和dragmove事件来操作多个图层上的对象,然后我就失去了对背景单击的引用 我需要做些什么来确保重新绘制阶段不会导致事件停止触发?而不

KineticJS似乎在重新绘制舞台后处理背景层上的点击时存在问题

我有一个JSFIDLE,其中有一个关于这个问题的最小示例

在第34行,我有:

stage.draw()
如果这被注释掉,事件将按其应该的方式触发。当出现这种情况时,将单击事件拖到后台后将停止触发

我知道在这个例子中,我没有做任何需要我重新绘制舞台的事情,但在我的项目中,我使用dragstart和dragmove事件来操作多个图层上的对象,然后我就失去了对背景单击的引用


我需要做些什么来确保重新绘制阶段不会导致事件停止触发?

而不是使用
stage.draw()
使用
foreground.draw()

以下是最新的


或者:在圆实例化内设置
dragOnTop:false

从重新绘制舞台到重新绘制各个受影响的层对我来说很有用。设置dragOnTop:false无效,我仍然无法调用stage.draw()。我认为这是个错误吗?嗯。。。我不确定。。。我看到我的小提琴还有前景。draw()所以改变的不是dragOnTop。似乎后退无助于建立新的小提琴。无论如何!因此,这可能不是一个bug,但Eric(KineticJS创建者)可能是回答这个问题的最佳人选。作为旁白,为了获得更好的性能,最好重新绘制各个层,而不是整个舞台