我尝试使用canvas和javascript。我写了一个函数来绘制一个带有id的canvas元素并添加一些事件监听器,这样我就可以通过按住鼠标并移动她来上下拖动元素。 我的问题是,当我创建第二个带有单独id的canvas元素时,我可以拖动它,但第一个不再移动。这就是我添加事件监听器的方式:
canArray.push(canvas);
//alert(canArray.length);
for (var i = 0; i < canArray.length; i++) {
//alert(canArray[i]);
updateCanvasRect(canvas);
canArray[i].addEventListener('mousedown', mouseDown, false);
canArray[i].addEventListener('mouseup', mouseUp, false);
canArray[i].addEventListener('mousemove', mouseMove, false);
canArray[i].addEventListener('mouseleave', mouseLeave, false);
}
希望你们了解我的问题并知道如何处理我的问题,以便两个canvas元素都能获得事件监听器!
编辑:http://jsfiddle.net/gxt4vnu7/1/ 我的作品有一个版本。您可以看到我可以通过单击来上下移动栏。但是当您在第9行删除评论并运行代码时,第二个栏不会像计划那样工作,第一个栏根本不起作用! :(