如何在svg元素上添加dragend事件

时间:2013-04-10 11:20:42

标签: javascript dom svg d3.js

我使用D3.js拖动SVG元素,使用D3.js drag的概念。拖动工作正常,但我想在dragend上调用一个函数。怎么做?

这是jsFiddle Link。我只是想在dragend上调用一个函数。

我应该试试

var drop = d3.behavior.drag()
  .on("dragend", function () { alert(); });

2 个答案:

答案 0 :(得分:7)

您似乎尝试进行某种嵌套拖动或其他操作,以下内容应该有效:

 var drag1 = d3.behavior.drag()
    .on("drag", dragmove)
    .on("dragend", function () { alert("drag ended"); });

完整示例:http://jsfiddle.net/xnjGD/

答案 1 :(得分:0)

如果有人仍然需要这样的东西,请快速提及,d3.behaviourdragend 已被弃用。如果您仍然需要该功能,它应该如下所示:

d3.drag().on("end", (_event, dimension) => {
    console.log("alert ended for : " dimension)
  })

(更多信息:https://github.com/d3/d3/blob/master/CHANGES.md#dragging-d3-drag