【发布时间】:2013-09-29 07:01:46
【问题描述】:
在 D3 中,如果你定义了这样的拖动函数:
var drag = d3.behavior.drag()
.on("drag", function () {alert("drag")})
.on("dragend", function () {alert("dragEnd")});
你真的不能这样做:
d3.select("#text1")
.on("click", function(d,i) {alert("clicked")})
.call(drag);
原因是点击会在“dragend”触发之后触发。在我看来,应该有一个单独的点击事件,因为我发现 dragend 和 click 之间存在巨大差异。
要区分 SVG 元素中拖动事件的单击和结束,解决方案是什么?
【问题讨论】:
标签: javascript d3.js svg dom-events