2016-06-13 81 views
0

如何激活画布标签内的拖放功能?如何激活画布标签内的拖放功能?

+0

可能的复制http://stackoverflow.com/questions/4468940/drag-and-drop- canvas-in-html5 –

+0

[JavaScript Canvas中最简洁的拖放代码]的可能重复(http://stackoverflow.com/questions/8528428/cleanest-drag-and-drop-code-in-javascript-canvas) – Laurel

回答

0

据我所知,画布内没有内置拖放操作,因为画布是您绘制的文字上下文。基于画布的游戏会不断刷新和重绘所有元素。

基本上,画布需要大量人工的,微调的色彩组合,尽管它可以根据您想要那种手工的情况是高性能,决定控制

当一个用户点击看起来是在你的画布内的对象,你必须计算鼠标事件的X和Y坐标落在哪里,并确定哪些动作可以在那里绘制的任何东西执行onclick

正常的DOM(不是在canvas或iframe中)会从你点击的元素中发出一个事件,并且会通过所有父元素冒出来说明某个目标元素被点击,并且这个激发的事件将会有很多数据关于该点击事件

画布有点像是一幅真正的绘画:而不是一组对象,没有什么可拖动的,只是一堆关于哪些像素是哪种颜色的数据。

通常情况下,HTML元素有一个属性[draggable],但您仍然需要手动重新定位元素mouseup或其他任何,基于屏幕或最近非静态放置的父。这个问题可能会有所帮助:HTML5 Canvas Drag and Drop Item

而应该寻找到处问这样的问题,在我看来