中断D3中的退出转换
Interrupt exit transition in D3
我有一个D3 force布局网络与标签链接像这样的一个。我已经扩展了它,所以现有的链接标签有一个淡出效果。标签的退出代码如下所示:
$linkLabel.exit()
.classed('fadeout', true)
.transition()
.delay(250)
.remove();
现在标签可以在淡出/退出时重新进入布局(例如,当快速连续的鼠标悬停和鼠标离开事件发生在同一节点上时)。发生的情况是,无论如何,各自的标签被删除,因为事件流就像exit()
-> transition()
-> delay()
-> enter()
-> remove()
。
我需要做的是中断重新进入布局的标签的过渡,因此不为它们调用remove()
函数。你知道怎么做吗?
通过准备示例,我实际上已经找到了一个可能的解决方案。如果我在每次更新之前删除所有当前褪色/退出的标签,它就会起作用:
$svg.selectAll('.link-label.fadeout').remove();
参见修改后的fiddle(在updateLinkLabels()
函数中)。也许你知道一个更优雅的解决方案?
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- 如何在Javascript中将JSon对象转换为数组
- 使用JS将数组转换为json对象
- 如何使用json将对象列表从java转换为javascript
- 偶尔结结巴巴地说“;堆叠的”;translate()上的转换(v4.0.0-alpha40)
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- 在Javascript中转换对象数组
- 弹出窗口出现,然后退出
- 将数字转换为一定数量的硬币
- 将纯文本URL转换为可单击链接
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 如何将TypeScript对象转换为普通对象
- 检测个位数整数时正在转换毫秒
- 从javascript到jquery的转换
- DOM事件通过JSON转换为java
- D3在转换时退出多个系列折线图标签
- 从路由转换不会删除 Ember.js 中退出路由的控制器观察器
- 保持元素顺序(select .order)与退出转换在d3
- 中断D3中的退出转换