2

我正在使用 cytoscape.js。我有一些重叠的节点,我正在尝试修复它们的 z-index,以便我可以将后面的节点带到前面。我不认为它是正确的。我做了两个例子:

1) http://jsfiddle.net/VzCZm/2/在这些我使用了库的 parent 属性,我将节点“n2”的 z-index 固定为 10,当你移动节点“n1”和节点“father3”内的“n2”,你可以看到这些比“n1”更暗,但它仍然在“father3”节点的后面。我怎样才能把它带到前面?

ready: function(){
   window.cy = this; 
   cy.nodes("[id='n2']").css('z-index', 10);
}

2) http://jsfiddle.net/6tKdD/在这些示例中,我没有使用 parent 属性,因为我认为这可能是问题所在,而是使用普通节点并手动叠加它们。在这种情况下,您可以操纵 z-index 并且它们运行良好,现在唯一的问题是边缘绘制在节点后面,因此您看不到它们,即使您更改了它们的 z-index 您仍然看不到他们。如果将“George”或“Elaine”节点移到“Jerry”节点之外,您可以看到这两个节点之间有一条边。如何使边缘可见?

ready: function(){
  window.cy = this;
  cy.nodes("[id='j']").css("z-index", 1);
  cy.nodes("[id='g']").css("z-index", 3);
  cy.nodes("[id='e']").css("z-index", 3);
  cy.edges("[source='g']").css("z-index", 2);
  cy.nodes("[id='k']").css("z-index", 0);
}

非常感谢您的帮助!

安德烈娜

4

1 回答 1

2

修正:有用于细粒度控制 z 排序的属性。如果您愿意,您可以设置任何顺序。默认值在后面的 OP 中指定。

特性:

  • z-index
  • z-index-比较
  • z-复合深度

文档:http: //js.cytoscape.org/#style/visibility

——</p>

操作:

像 HTML 一样,设置 z-index 不是全局的:它是相对于父节点的。出于可访问性的原因,在节点后面绘制边。如果要显示边缘,请不要将节点放在它们前面。请注意,复合节点之间的边是一个例外。

于 2013-08-07T15:21:35.050 回答