3

当我选择几个连接的或只是边的节点时,如何预先定义,使所选边的宽度更大,而不影响整个网络的其余边或节点的宽度?

我在选择节点或边时预定义了这个:

$('#cy').cytoscape({
  style: cytoscape.stylesheet()
    .selector(':selected')
      .css({
        'background-color': 'black',
        'line-color': 'red',
        'target-arrow-color': 'black',
        'source-arrow-color': 'black',
        'opacity': 1
      })...

但是没有'line-width',所以如果我把'width': 5它应用到所有的边缘和节点上。

那么如何在选择时修改边缘宽度并使图形的其余部分保持不变?

提前致谢!

4

1 回答 1

4

Cytoscape.js → 选择器

...选择器功能类似于DOM 元素上的 CSS 选择器,但 Cytoscape.js 中的选择器用于图形元素的集合...选择器可以组合在一起以进行强大的查询...选择器可以连接在一起(使用逗号有效地创建逻辑或)... node、、edge*(组选择器)基于组匹配元素(node对于节点、edge对于边、*对于所有)...

为了仅将样式应用于选定的边缘,请使用选定边缘的选择器。

$('#cy').cytoscape({
  style: cytoscape.stylesheet()
    .selector(':selected')
      .css({
        'background-color': 'black',
        'line-color': 'red',
        'target-arrow-color': 'black',
        'source-arrow-color': 'black'
      })
      .selector('edge:selected')  // ← ← ← ← ←
        .css({
          'width': 5
      })...

jsFiddle 演示:http: //jsfiddle.net/xmojmr/rbuj3o9c/2/

于 2015-01-14T10:49:30.000 回答