W D3, jeśli zdefiniowano funkcję przeciągania takiego:D3 Zdarzenia myszy - Click & DragEnd
var drag = d3.behavior.drag()
.on("drag", function() {alert("drag")})
.on("dragend", function() {alert("dragEnd")});
Naprawdę nie można wykonać następujące czynności:
d3.select("#text1")
.on("click", function(d,i) {alert("clicked")})
.call(drag);
Powód jest taki, że klikniecie zostać zwolnionym po tym, jak zwolni się "dragend". Moim zdaniem powinno istnieć oddzielne zdarzenie do klikania, ponieważ widzę ogromną różnicę między dragend i click.
Aby odróżnić kliknięcie i zakończenie zdarzenia przeciągania w elemencie SVG, jakie byłoby rozwiązanie?
ale to rozwiązanie nie działa w Chrome. Mam na myśli, że dragend zawsze strzela przed kliknięciem – mhd