我使用Jit作为SpaceTree来可视化一些信息(谁猜到了…)
问题是,当用户平移图形并将鼠标拖动到画布外部时,jit无法识别它,并且继续拖动。当用户回到画布的区域时,仍处于拖动模式并继续平移。这种行为在他们的空间树示例中也是可以观察到的
(只是为了澄清-我正在平移整个图形;我没有将节点拖动到某个目标位置…)
我可以通过jQuery绑定到$('#container').mouseleve(),但如何告诉jit停止拖动
(jit(jit.Events.*)本身提供的mouseOver和mouseLeave处理程序绑定到各个节点,因此在这种情况下没有真正的帮助)
有人有主意吗?
干杯,
Corelgott_
我终于找到了一种方法……绝对不是最干净/最好的方法,但它至少有效:
当鼠标离开jit画布的框时,我模拟一个完整的鼠标输出事件并将其发送给jit。
通过使用这段代码"如何使用JavaScript模拟鼠标点击?"如下:
$('#infovis').mouseleave(function(e) {
simulate($('canvas')[0], 'mouseup')
});
当鼠标存在信息vis-<div>
希望这能在未来为某人节省一些时间!
干杯,
Corelgott