访问vis.js单击处理程序中的节点数据

时间:2016-03-10 02:27:03

标签: javascript vis.js vis.js-network

我有节点和边缘的网络图,并希望在点击后获取节点数据。我目前有

var network = new vis.Network(container, data, options);
network.on( 'click', function(properties) {
    console.log('clicked node ' + properties.nodes);
});

但这只是给了我一些内部身份[105]。有没有办法获取与节点关联的实际数据。

1 个答案:

答案 0 :(得分:15)

您在属性中获得的节点ID不是"某些内部ID",但这些是您自己定义的节点的ID。您只需使用以下节点从您自己的DataSet读取节点的数据:

var nodes = new vis.DataSet([...]);
var edges = new vis.DataSet([...]);
var data = {nodes: nodes, edges: edges};

var network = new vis.Network(container, data, options);
network.on( 'click', function(properties) {
    var ids = properties.nodes;
    var clickedNodes = nodes.get(ids);
    console.log('clicked nodes:', clickedNodes);
});