绑定到缩放以缩放行为结束

tmc*_*mcw 5 zooming d3.js

如果有一种方法可以在缩放行为转换结束时轻松绑定到事件(当用户鼠标悬停或触摸移动图表的某些内容时),那将会很方便。这是否可以通过绑定所有 up 事件来实现,或者这是人们以其他方式所做的事情?

小智 5

在 d3 v4 中, zoom.on 类型名称已更改。它们现在是“开始”、“缩放”和“结束”。

  var d3zoom = d3.zoom()
    .on("start", zoomStartFunction)
    .on("zoom", zoomFunction)
    .on("end", zoomEndFunction);

  svg.call(d3zoom);
Run Code Online (Sandbox Code Playgroud)

查看非常有用的文档


小智 3

我正在寻找同样的东西,然后找到了这篇文章

你可以这样写:

var svg = outer.append("svg:g")
            .call(d3.behavior.zoom()
                    .on("zoom", rescale)
                    .on("zoomstart", zoomStart)
                    .on("zoomend", zoomEnd))
            .on("dblclick.zoom", null)
            .append("svg:g");

function zoomStart(){
    console.log("ZOOM START");
}

function zoomEnd(){
    console.log("ZOOM END");
}
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你。