我使用 theJit 作为 SpaceTree 来查看一些信息(谁猜到了......)
问题是,当用户平移图表并拖动画布的鼠标时,jit无法识别它并且继续拖动。当用户返回画布的区域时,仍然处于拖动模式并继续进行平移。此行为在Space-Tree-Example。
中也是可观察的(只是为了澄清 - 我正在平移整个图表;我没有将节点拖到某个目标位置......)
我可以通过 jQuery 绑定到$('#container')。mouseleave(),但是如何告诉jit停止拖动?
(由jit(jit.Events。*)提供的mouseOver和mouseLeave处理程序本身绑定到各个节点,因此在这种情况下没有用处)
有人有想法吗?
干杯,
Corelgott _
答案 0 :(得分:0)
我终于找到了一种方法来做到这一点......绝对不是最干净/最好的做法,但至少可以起作用:
当鼠标离开jit画布的框时,我会模拟完整的鼠标移出事件并将其发送到jit。
使用此代码“How to simulate a mouse click using JavaScript?”,如下所示:
$('#infovis').mouseleave(function(e) {
simulate($('canvas')[0], 'mouseup')
});
当鼠标存在info-vis-< div>
时,它会停止希望将来能节省一些时间!
干杯,
Corelgott