Cytoscape Edgehandles:多个 cy 实例与 Ghost Edgehandles 混淆
Cytoscape Edgehandles: multiple cy instances messing with Ghost Edgehandles
我想在单个页面中按时间顺序显示多个 cytoscape 实例:第一组节点显示在图形上,用户必须在它们之间创建边缘,然后移动到第二个图形,依此类推。
我的重新初始化代码和 cy.edge句柄之间似乎存在冲突。首先,一切正常。从第二个实例开始,拖动边缘时不会显示"重影"边缘。
我在控制台中收到以下错误消息:
jquery.cytoscape.js-edgehandles.js:333 uncatch TypeError: 不能 读取 null jquery.cytoScape.js-edgeHandles 的属性 'id'.js:333 $.fn.cytoscapeEdgehandles.functions.init.drawLine jquery.cytoscape.js-edgehandles.js:732 moveHandler jquery-2.0.3.min.js:5 x.event.dispatchjquery-2.0.3.min.js:5 x.event.add.y.handle
显示为"空"的变量是:
333:来源:sourceNode.id(),
这是我为重新初始化 cy.instance 编写的代码:
$('#next').click(function(){
indexLevel++;// index to move from one instance to the next.
cy.load(elesJson);// load nodes collection
cy.ready();
});
这是我的代码:
//元素
$(function(){
var elesJson = {
nodes: [{ data: { id: 'S'} }...],
edges: [{ data: { id: 'loan', source: 'B', target: 'U' } },...]};
实例索引
var indexLevel=0;
Cy 初始化
$("#cy"+indexLevel).cytoscape({
style: cytoscape.stylesheet()...
elements: elesJson,
ready: function(){window.cy = this;cy.zoomingEnabled( false );
cy.panningEnabled( false );});
有什么解决方案吗?
我不是问题到底是什么,但我认为原因可能出在工作流程中。 它应该是:
(1) destroy()
cy
上的边缘手柄。
(2)cy.destroy()
核心实例。
(3)创建一个新的核心实例,cy
。
(4) 在cy
上创建新的边缘手柄。
交替流:
(1)永不破坏。
(2)与其销毁,不如清空图形并重复使用它们:cy.elements().remove()
如果边缘句柄中存在错误,则替代流可能更安全,并且肯定更有效(即更快)。
如果这不能解决问题,那么也许您可以共享一些代码(或者如果代码敏感,则私下发送给我),我们可以在此处发布通用结果。
- 浏览器与gullow和Ghost博客同步
- 获取错误:无法启动Ghost驱动程序
- 如何在CSS中制作ghost元素
- Cytoscape Edgehandles:多个 cy 实例与 Ghost Edgehandles 混淆
- 为什么 Ghost.py 不加载/运行我的Javascript
- Ghost 代码降价块中的行号
- Ghost CMS中的Foreach循环返回null
- "Ghost"ng点击功能
- 我可以在ghost博客条目中使用嵌入式Javascript吗
- 在Ghost JS中获取N个标记为T的最后帖子
- Ghost.py通过javascript链接
- Node.js、Express&Ghost子目录URL解析错误
- javascript中的Ghost元素
- 如何在使用Ghost.py提交表单后获得下一页
- 屏幕抓取动态网页在python与Ghost.py
- 随机化标题图像与Post链接同步在Ghost.JS上
- Ghost -嵌入式JavaScript不会触发d3js
- 使用jquery/ghost使某些页面上的活动页面样式不同
- Angular ngClass ghost class
- 是否可以在 Ghost 中按帖子包含外部 JavaScript