Javascript 从“中”移动层后,事件将丢失;“德拉格莫夫”;回拨

Javascript 从“中”移动层后,事件将丢失;“德拉格莫夫”;回拨,javascript,kineticjs,Javascript,Kineticjs,我有一个滚动条可以移动一个图层,所以在滚动条的“dragmove”回调中,图层会被移动。这将导致移动层上的所有绑定事件断开连接 请看这把小提琴: 这是一个bug还是我做错了什么?当您使用拖动事件时,KineticJS会在顶部创建一个临时层,这样您的事件在拖动后不会被注册 只需为dragend添加另一个处理程序,如下所示: scroller.on('dragend', function(event){ layer.moveToTop(); layer.draw(); }); 这是

我有一个滚动条可以移动一个图层,所以在滚动条的“dragmove”回调中,图层会被移动。这将导致移动层上的所有绑定事件断开连接

请看这把小提琴:


这是一个bug还是我做错了什么?

当您使用拖动事件时,KineticJS会在顶部创建一个临时层,这样您的事件在
拖动后不会被注册

只需为
dragend
添加另一个处理程序,如下所示:

scroller.on('dragend', function(event){
    layer.moveToTop();
    layer.draw();
});
这是我的答案


有关您面临的问题的更多详细信息/解释,请查看此项:

谢谢,太好了!但是如果我不想让图层在上面呢?可以不删除临时层吗?可以使用
rect.moveToTop()
而不是移动整个层。临时层被删除,但我不确定拖动结束后层/节点的排列顺序。检查此更新的小提琴:,删除
moveToTop()
。只需保留图层。draw()就可以了。我这里没有解释,不过我会查一查。
scroller.on('dragend', function(event){
    layer.moveToTop();
    layer.draw();
});