如何停用sigma-js节点悬停

how to inactive sigma js node hover

本文关键字:悬停 节点 sigma-js 何停用      更新时间:2023-09-26

我在js文件中有以下代码:

function create() {
sigma.classes.graph.addMethod('neighbors', function (nodeId) {
    var k,
        neighbors = {},
        index = this.allNeighborsIndex[nodeId] || {};
    for (k in index)
        neighbors[k] = this.nodesIndex[k];
    return neighbors;
});
sigma.parsers.gexf(
    '/resources/js/arctic.gexf',
    {
        container: 'zarf',
        settings: {
        }
    },
    function (s) {
        s.graph.nodes().forEach(function (n) {
            n.originalColor = n.color;
        });
        s.graph.edges().forEach(function (e) {
            e.originalColor = e.color;
        });
        s.bind('clickNode', function (e) {
            var nodeId = e.data.node.id,
                toKeep = s.graph.neighbors(nodeId);
            toKeep[nodeId] = e.data.node;
            //***************************
            if ($("#lab").childElementCount != 0) {
                $("#lab").children().remove();
            }
            $("#lab").append('<li>' +
                e.data.node.label);
            $.each(toKeep, function (key, value) {               
                $("#lab").append('<ul>' + '<li>' +
                    key +
                    '</li>'
                    + '</ul>')
            });
            $("#lab").append(
                '</li>')

            s.graph.nodes().forEach(function (n) {
                if (toKeep[n.id])
                    n.color = n.originalColor;
                else
                    n.color = '#eee';
            });
            s.graph.edges().forEach(function (e) {
                if (toKeep[e.source] && toKeep[e.target])
                    e.color = e.originalColor;
                else
                    e.color = '#eee';
            });
            s.refresh();
        });
        s.bind('clickStage', function (e) {
            s.graph.nodes().forEach(function (n) {
                n.color = n.originalColor;
            });
            $("#lab").children().remove();
            s.graph.edges().forEach(function (e) {
                e.color = e.originalColor;
            });
            s.refresh();
        });
        s.bind('overNode', function (e) {
            var label = e.data.node.label;
        });
        s.bind('outNode', function (e) {
            $("#tt").remove();
        })
    }
);
}

这是sigma-js样本。

我想让非活动节点悬停。

或者我想自己设计一个工具提示并添加其他数据。

我认为必须在第18行的"设置{}"之间添加一些代码。但我不知道该怎么做。

我该怎么做?

enableHovering: false添加到settings以禁用它。

有关设置的完整列表,请访问https://github.com/jacomyal/sigma.js/wiki/Settings