2017-08-06 80 views
0

我遇到了不允许的游标问题。拖动“拖动”元素时,不允许的光标出现,我无法再拖动它。我怎样才能防止呢?我想让我的“拖动”元素在鼠标关闭时始终处于“绝对”状态。JQUERY如何在拖动时禁用不允许的光标?

注:我知道它可能会发生因为“指针事件”,但我需要它被包含到此代码中。

enter image description here

一些代码:

$("#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/

感谢您的帮助。

回答

0

处理您的鼠标事件之前,拨打电话到

e.preventDefault();

它取消其阻止浏览器执行默认行为的事件。通常它会在通常不可拖动的元素上显示“不允许”光标。

您可以看到此操作:https://jsfiddle.net/38zecoL1/4/

相关问题