Я рисую линию на экране пользователем с помощью d3. js. Что я хочу сделать, это открыть контекстное меню с правой кнопкой мыши, когда процесс будет завершен. Это меню должно быть «сделано» и «отменить». Как я могу это сделать?
<!DOCTYPE HTML>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="assets/style.css">
<body>
<script src="assets/d3.min.js"></script>
<script>
let line;
let vis = d3.select("body").append("svg")
.attr("width", 1280)
.attr("height", 610)
.on("click", mousedown)
.on("contextmenu", mouseup);
function mousedown() {
let m = d3.mouse(this);
line = vis.append("line")
.attr("x1", m[0])
.attr("y1", m[1])
.attr("x2", m[0])
.attr("y2", m[1]);
vis.on("mousemove", mousemove);
}
function mousemove() {
let m = d3.mouse(this);
line.attr("x2", m[0])
.attr("y2", m[1]);
}
function mouseup() {
vis.on("mousemove", null);
}
</script>