Zdarzenia myszy D3 - kliknij i przeciągnij
W D3, jeśli zdefiniowałeś funkcję przeciągania w następujący sposób:
var drag = d3.behavior.drag()
.on("drag", function () {alert("drag")})
.on("dragend", function () {alert("dragEnd")});
Naprawdę nie możesz wykonać następujących czynności:
d3.select("#text1")
.on("click", function(d,i) {alert("clicked")})
.call(drag);
Powodem jest to, że kliknięcie zostanie wystrzelone po tym, jak „przeciągnięcie” wystrzeli. Moim zdaniem powinno być oddzielne wydarzenie do kliknięcia, ponieważ widzę ogromną różnicę między przeciągnięciem a kliknięciem.
Jakie byłoby rozwiązanie, aby odróżnić klikanie i zakończenie zdarzenia przeciągania w elemencie SVG?