как называется событие? - PullRequest
0 голосов
/ 21 марта 2020

Я хочу сделать событие, когда я нажимаю на элемент и перемещаю курсор на другой элемент, затем отпускаю курсор. я сделал это, используя mouseup и mousedown события. но какое-то время mouseup не работает !!! курсор переходит на руку и не может отпустить его на другом элементе.

for(var i=0;i<20;i++) {
   for(var j=0;j<20;j++) {
      var circle = document.createElement("div");
      circle.setAttribute("class","circle");
      circle.setAttribute("id",20*(i-1)+j);
      circle.setAttribute("style","left:"+(35*(j+1)+20*j)+"px;top:"+(10*(i+1)+20*i)+"px;");
      circle.addEventListener("mouseup",function() { ...});
      circle.addEventListener("mousedown",function() { ...});
      body.appendChild(circle);

    }
}

1 Ответ

0 голосов
/ 21 марта 2020

Если вы убираете mousedown, а затем перемещаете мышь от элемента, событие mouseup никогда не срабатывает.

Попытайтесь добавить warnDefault () в ваш обработчик mousedown ...

  circle.addEventListener("mousedown",function(e) { e.preventDefault(); ... });

Вы также можете попробуйте связать событие mouseleave, чтобы вызвать mouseup

...