是否可以在 JavaScript 中更改事件的类型
?
在这种情况下,我在 Canvas 上使用 jQuery 触发事件,但在呈现此 Canvas 的特定元素上,如绘制的形状或图像。
mousemoveevent ---> [canvas] -> [find element] ---> mousemoveoverelementevent
基本上,我通过以下方式在整个 Canvas 上捕获 onmousemove 事件:
$('canvas').bind('mousemove'........
但是 DOM 不存在于 Canvas 中,所以我希望它转换(以便稍后在过程中聊天)到:
$('canvas').bind('mousemoveOverElement'........
$('canvas').bind('mouseenterOnElement'........
$('canvas').bind('mouseleaveOnElement'........
然后分配类似
的东西e.element = 'imageAtACertainPositionInTheCanvas'
我更喜欢传递修改后的事件,而不是分配新的回调。
最佳答案
- CanvasScript3提供具有某些功能(例如事件)的库。 MouseOver 有一些东西事件,MouseOut事件。检查list of tests .
- 在之前的 stackoverflow questions 中也有将事件关联到 Canvas “元素”的示例.
- HTML5 Canvas Rectangular Region Mouseover Tutorial
您可能想阅读 Sprite and Canvas 的问题以及他们相对较差的表现。
关于javascript - 更改事件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4799443/