Когда я нажимаю на img, как показано ниже, и перехожу к функции processToolClick, 2 события eventListener выполняются вместо ожидания события mouseup или mousedown, прежде чем продолжить. Я пробовал анонимные функции и .bind, которые, кажется, препятствуют доступу к функции processToolClick. Как мне остановиться с помощью onclick и дождаться mousup или mousedown?
<img src="graphicPaneResources/linetool.png" alt="Line Tool" onClick = "processToolClick(this, event)";>
function processToolClick(elem, evt) {
let tmpToolName = elem.src;
tmpToolName = tmpToolName.substring(tmpToolName.lastIndexOf("/")+1);
tmpToolName = tmpToolName.substring(0, tmpToolName.indexOf("."));
switch(tmpToolName) {
case "linetool":
console.log("OK "+tmpToolName+" "+evt)
toolSelection = "linetool";
canvas.addEventListener("onmousedown", lineDrawer.startLine(evt));
canvas.addEventListener("onmouseup", lineDrawer.endLine(evt));
lineDrawer.processLine(evt);
break;
default:
}