gpt4 book ai didi

javascript - D3 中的中断退出转换

转载 作者:行者123 更新时间:2023-11-28 17:39:41 25 4
gpt4 key购买 nike

我有一个 D3 力布局网络,带有标签链接,如 this one .我对其进行了扩展,因此现有的链接标签具有淡出效果。标签的退出代码如下所示:

$linkLabel.exit()
.classed('fadeout', true)
.transition()
.delay(250)
.remove();

现在,标签可以在淡出/退出的同时重新进入布局(例如,当同一节点上发生快速连续的鼠标悬停和鼠标移开事件时)。无论如何,相应的标签都会被删除,因为事件流就像 exit() -> transition() -> delay() -> enter() -> remove()

我需要做的是中断重新进入布局的标签的转换,这样就不会为它们调用 remove() 函数。你知道如何做到这一点吗?

最佳答案

通过准备 example我实际上找到了一个可能的解决方案。如果我在每次更新之前删除所有当前正在褪色/退出的标签,它会起作用:

 $svg.selectAll('.link-label.fadeout').remove();

参见 modified fiddle (在 updateLinkLabels() 函数中)。也许您知道更优雅的解决方案?

关于javascript - D3 中的中断退出转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24370800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com