gpt4 book ai didi

javascript - D3.js:从选择中删除 force.drag

转载 作者:可可西里 更新时间:2023-11-01 01:58:28 25 4
gpt4 key购买 nike

我有一个(相当简单的)问题:如何在 D3.js 做出的选择上“取消调用”force.drag?假设我创建了一组元素并在其上调用了“调用”,为它提供了力导向布局的拖动回调。看起来像这样:

    d3.selectAll('rect').call(force.drag);

现在以后可以从某些节点中删除该行为。我的方法包括使用

重置各种监听器,例如“点击”、“拖动”等
    d3.select('rect#no-drag').on('click', null);

它们都不起作用。有人知道如何删除回调吗?

最佳答案

你很接近。拖动事件由一个名为 drag 的命名空间的 mousedown 事件发起。请参阅:https://github.com/mbostock/d3/blob/master/src/behavior/drag.js#L5

因此,要删除它,您可以这样做:

d3.select('rect#no-drag').on('mousedown.drag', null);

关于javascript - D3.js:从选择中删除 force.drag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13136355/

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