Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 停止Highcharts Networkgraph在悬停时重新绘制标记_Javascript_Svg_Highcharts - Fatal编程技术网

Javascript 停止Highcharts Networkgraph在悬停时重新绘制标记

Javascript 停止Highcharts Networkgraph在悬停时重新绘制标记,javascript,svg,highcharts,Javascript,Svg,Highcharts,我正在研究一个网络图,有人帮助我找到了一个点,在点击节点时可以隐藏/显示节点。但是,当您移动鼠标时,似乎存在重新绘制节点的默认行为 这是小提琴:。您将看到单击节点会隐藏其子节点,但是,如果在单击后单击鼠标,则该节点会重新出现 我补充说 addClass('hide-tree-element')) 这有助于数据标签,但标记或“图形”每次都会重新绘制 在悬停时,似乎存在“使其他系列变暗”的默认行为。我认为这可能会影响它。我试过禁用它,但似乎不起作用 任何帮助都将受到感激 没错,非活动状态会在mou

我正在研究一个网络图,有人帮助我找到了一个点,在点击节点时可以隐藏/显示节点。但是,当您移动鼠标时,似乎存在重新绘制节点的默认行为

这是小提琴:。您将看到单击节点会隐藏其子节点,但是,如果在单击后单击鼠标,则该节点会重新出现

我补充说

addClass('hide-tree-element'))
这有助于数据标签,但标记或“图形”每次都会重新绘制

在悬停时,似乎存在“使其他系列变暗”的默认行为。我认为这可能会影响它。我试过禁用它,但似乎不起作用


任何帮助都将受到感激

没错,非活动状态会在
mouseOut
事件上重新绘制每个点

要更改此默认行为,您只需包装
Highcharts.Series.prototype.onMouseOut
方法,并删除负责删除非活动状态功能的代码段(添加到此处:):

演示:


没错,非活动状态会在
mouseOut
事件上重新绘制每个点

要更改此默认行为,您只需包装
Highcharts.Series.prototype.onMouseOut
方法,并删除负责删除非活动状态功能的代码段(添加到此处:):

演示:


非常感谢!这真的很有帮助。嗨@wojciech-我想知道你是否能帮我。我很难让节点的“孙子”在单击时隐藏/显示。有什么想法吗?我试图“触发”点击
link.id
,但它不起作用。所以当大卫哈里森被点击时,我希望地址和艾伦鲍尔也隐藏起来。如果需要的话,很乐意单独提问。非常感谢。你可以在链接参考链中进一步实现它。查看此演示:嗨@Wojciech,非常感谢。看来我现在可以把它们藏起来了,太好了。我看到的一个问题,与最初的问题有关。“单击”事件似乎也会重新绘制节点。因此,如果单击一个节点,它将隐藏子节点,这没有问题,但是单击另一个节点将仅显示原始隐藏节点的标记。有什么想法吗?不幸的是,这是默认的networkgraph行为。要更改它,您必须覆盖
渲染
方法,并在点重新渲染后再次隐藏它们。检查这个例子:非常感谢!这真的很有帮助。嗨@wojciech-我想知道你是否能帮我。我很难让节点的“孙子”在单击时隐藏/显示。有什么想法吗?我试图“触发”点击
link.id
,但它不起作用。所以当大卫哈里森被点击时,我希望地址和艾伦鲍尔也隐藏起来。如果需要的话,很乐意单独提问。非常感谢。你可以在链接参考链中进一步实现它。查看此演示:嗨@Wojciech,非常感谢。看来我现在可以把它们藏起来了,太好了。我看到的一个问题,与最初的问题有关。“单击”事件似乎也会重新绘制节点。因此,如果单击一个节点,它将隐藏子节点,这没有问题,但是单击另一个节点将仅显示原始隐藏节点的标记。有什么想法吗?不幸的是,这是默认的networkgraph行为。要更改它,您必须覆盖
渲染
方法,并在点重新渲染后再次隐藏它们。检查此示例:
// Reset all inactive states
chart.series.forEach(function (series) {
   series.setState('', true);
});