我遇到了不允许的光标问题。拖动“拖动”元素时,出现不允许的光标,我不能再拖动它。我该如何预防呢?我想让我的“拖动”元素在鼠标按下时总是“绝对”。

注意:我知道它可能由于“指针事件”而发生,但是我需要将其包含在此代码中。

javascript - JQUERY如何在拖动时禁用不允许的光标?-LMLPHP

一些代码:

$("#drag").bind({
  mousedown : function (e) {
      var dragged = $(this);
      dragged.css({
          left : e.pageX - (50 / 2),
          top : e.pageY - (50 / 2)
      });
      dragged.addClass("absolute");
      dragged.css({
          'pointer-events' : 'none'
      })
      var upHandler = function () {
          dragged.removeClass("absolute");
          dragged.css({
              'pointer-events' : 'all'
          })
          $("body").off('mouseup', upHandler);
          $("body").off('mousemove', moveHandler);
      }
      var moveHandler = function (e) {
          dragged.css({
              left : e.pageX - (50 / 2),
              top : e.pageY - (50 / 2)
          });
      }

      $("body").bind({
          mouseup : upHandler,
          mousemove : moveHandler
      })
  }
  });

  $("body").mousemove(function (event) {
     $("#log").text("pageX: " + event.pageX + ", pageY: " + event.pageY);
  });

https://jsfiddle.net/38zecoL1/1/

谢谢你的帮助。

最佳答案

在处理鼠标事件之前,请致电
e.preventDefault();
它取消了阻止浏览器执行默认行为的事件。通常,它将在通常不可拖动的元素上显示“不允许”光标。

您可以看到它的运行情况:https://jsfiddle.net/38zecoL1/4/

关于javascript - JQUERY如何在拖动时禁用不允许的光标?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45534302/

10-13 08:53