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

前端之家收集整理的这篇文章主要介绍了javascript – D3.js:从选择中删除force.drag前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个(相当简单的)问题:如何在D3.js的选择上“un-call”force.drag?假设我创建了一组元素,并在其上调用调用”,给它一个强制导向布局的回调.看起来像这样:
d3.selectAll('rect').call(force.drag);
@H_502_4@现在可以从以后的某些节点中删除该行为.我的方法包括重新设置各种听众,如“点击”,“拖动”等

d3.select('rect#no-drag').on('click',null);
@H_502_4@他们都没有工作.有人知道如何清除回调?

解决方法

@H_301_13@ 你很近拖动事件由具有名为drag的命名空间的mousedown事件启动.见: https://github.com/mbostock/d3/blob/master/src/behavior/drag.js#L5 @H_502_4@所以,要删除这个你可以做的:

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

猜你在找的JavaScript相关文章