【问题标题】:how to add dragend event on svg element如何在svg元素上添加dragend事件
【发布时间】:2013-04-02 05:03:00
【问题描述】:

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

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

我应该试试

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

【问题讨论】:

    标签: javascript dom svg d3.js


    【解决方案1】:

    您似乎正在尝试进行某种嵌套拖动或其他操作,以下应该可以工作:

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

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

    【讨论】:

    • 这在 D3 v4 中已更改为 end 而不是 dragendExample
    【解决方案2】:

    如果有人仍然需要这样的东西,请快速提及,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

    【讨论】:

      猜你喜欢
      • 2018-01-18
      • 1970-01-01
      • 2013-05-04
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      • 2012-12-14
      • 2021-12-02
      • 2019-05-05
      相关资源
      最近更新 更多