我使用cytoscape.js 2.2.5在angular.js应用程序中绘制图形,我可以正确选择节点。当带有图形的<div>移动时, Canvas 上的鼠标指针位置不会更新。这意味着我必须单击节点的“旧”位置以将其选中。

我尝试了cy.reset()cy.center()cy.fit(),但是鼠标指针的位置没有改变。

更改cytoscape <div>的位置后,如何更新图形?

原始页面:

更改<div>位置后

当我卸下蓝色面板并且图形<div>向上移动时,鼠标指针位置错误。我使用ng-show指令(使用CSS隐藏/可见)。

最佳答案

当您调整cy div的大小(或移动,我想)时,您需要将更改通知核心。不幸的是,浏览器DOM模型没有自动跟踪此方法的方法。

cy.resize(); // notify that the container has changed dims

http://cytoscape.github.io/cytoscape.js/#core/viewport-manipulation/cy.resize

也许cy.resize()应该具有一个类似于cy.invalidateDimensions()的别名,因此很明显,您需要在用例中使用它。

关于cytoscape.js:更改容器后鼠标指针位置错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23461322/

10-14 11:59
查看更多