我正在使用cytoscape.js。我有一些叠加的节点,我正在尝试修复它们的z-index,这样我就可以把后面的节点带到前面。我认为没有做对。我做了两个例子:
1)http://jsfiddle.net/VzCZm/2/在这一个中我使用了库的parent属性,我将节点“n2”的z-index修复为10,当你将节点“n1”和“n2”移动到里面时节点“father3”,你可以看到这一个比“n1”更暗但仍然在“father3”节点后面。我怎样才能把它带到前线?
ready: function(){
window.cy = this;
cy.nodes("[id='n2']").css('z-index', 10);
}
2)http://jsfiddle.net/6tKdD/在这些例子中,我没有使用父属性,因为我认为这可能是问题,而是我使用普通节点并且我手动叠加它们。在这种情况下,您可以操作z索引并且它们运行良好,现在唯一的问题是边缘是在节点后面绘制的,因此您无法看到它们,即使您更改了它们的z-index仍然看不到他们。如果在“Jerry”节点之外移动“George”或“Elaine”节点,则可以看到这两个节点之间存在边缘。如何使边缘可见?
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);
}
非常感谢你的帮助!
Andreina酒店
答案 0 :(得分:2)
与HTML一样,设置z-index不是全局的:它相对于父节点。出于可访问性原因,在节点后面绘制边缘。如果要显示边缘,请不要将节点放在它们前面。请注意,复合节点之间的边缘是一个例外。