html5 canvas hand cursor problems

后端 未结 3 1026
萌比男神i
萌比男神i 2020-12-15 08:16

I\'m playing around with html5 and some javascript to make a minor sketchpad. Whenever I click down on the canvas in chrome, the cursor becomes a text cursor. I have tried p

相关标签:
3条回答
  • 2020-12-15 08:58

    Use the disable text selection on the canvas. This works like a charm.

    var canvas = document.getElementById('canvas');
    canvas.onselectstart = function () { return false; } // ie
    canvas.onmousedown = function () { return false; } // mozilla
    

    Cheers, Kris

    0 讨论(0)
  • 2020-12-15 09:05

    While the other guys were absolutely bang on referring you to the quirksmode reference, that won't fix the problem you are having, and essentially you need to implement a variation of Kris's answer.

    In my own implementation, I found that preventing default behaviour in the mousedown event was all that was required to stop that pesky text selection cursor:

    function handleMouseDown(evt) {
      evt.preventDefault();
      evt.stopPropagation();
    
      // you can change the cursor if you want
      // just remember to handle the mouse up and put it back :)
      evt.target.style.cursor = 'move';
    
      // rest of code goes here
    }
    
    document.addEventListener('mousedown', handleMouseDown, false);
    

    Hope that helps.

    Cheers, Damon.

    0 讨论(0)
  • 2020-12-15 09:06

    Use pointer for your cursor property instead, like this:

    canvas { cursor: pointer; }
    

    hand is IE/Opera specific, you can see a full list of which cursors work in which browsers here.

    0 讨论(0)
提交回复
热议问题