如何使类在Cytoscape.js中工作

时间:2014-12-03 20:09:45

标签: cytoscape.js

我正在尝试向节点添加一个类,将所有css都放在样式表文件中,而不是在javascrpt声明中。

  var values = {
    nodes: [
      { data: { id: 'explore'}, 
        classes: 'ClassName1'
      },
      { data: { id: 'discover' } }
    ],
    edges: [
      { data: { source: 'explore', target: 'discover' } }
    ]
};

正如您所看到的,我正在添加类和类名,但没有任何反应。

2 个答案:

答案 0 :(得分:1)

你应该使用选择器, 这是解决方案:

        var cy = cytoscape({
            container: this.div[0],
            style: cytoscape.stylesheet()
            .selector(".ClassName1")
                .css({
                    'background-color': 'red',
                })        ,
            elements: values ,
            layout: 'MyLayout'
        });
        cy.layout();

答案 1 :(得分:0)

DaNeSh提供的答案很好。但是,让我提供详细的解释。

第1步:创建一个HTML div(称为“ cy”)。

第2步:在JS内

var cy = cytoscape({
                container: document.getElementById('cy')
                style: [
                    {
                        selector: 'node',
                        style: {
                            'label': 'data(id)'
                        }
                    },

                    {
                        selector: '.ClassName1',
                        style: {
                            'width': 8,
                            'height': 8,
                            'label': ''
                        }
                    }
                ],
                elements: {
                    nodes: [
                          { data: { id: 'explore'}, classes: 'ClassName1'},
                          { data: { id: 'discover' } }
                    ],
                    edges: [
                          { data: { source: 'explore', target: 'discover' } }
                    ]                 
               },
        });