繁体   English   中英

Google Chrome中的MouseUp和MouseDown事件

[英]MouseUp and MouseDown Events in Google Chrome

我有一个简单的html5 / canvas和js-setup:

的HTML

<canvas id="canvas" width="500" height="500" ></canvas>

JS

var canvas = $("#canvas"),
    c = canvas[0].getContext("2d");

c.fillStyle = "gray";
c.fillRect(0, 0, 500, 500);

$(document).mousedown(function() {
    console.log('down');
});
$(document).mouseup(function() {
    console.log('up');
});

让我感到惊讶的是,我能够像这样用google chrome记录事件

down
up
down
up
down 
down 
down 
down
up
down
down
down

意思是,我连续发生了下降事件。 我认为这是由canvas元素引起的,因为如果没有它,我将无法重现此行为。

这是一个小提琴: http : //jsfiddle.net/SunnyRed/zcmaT/

更新资料

我认为只有在用户单击并拖动时才会发生,在我的情况下可能就是这种情况。 这是一个简单的单击演示 我无法在Firefox和Opera中复制它。

我可以复制的唯一方法是在您的演示中,我要么:

  • 在页面外部(在JS小提琴的另一个iframe中)开始单击,然后将鼠标移到画布上。 要么
  • 开始在画布上单击,然后将其释放到页面范围之外(例如在页面填充上方)。

我相信这是正确的行为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM