Canvas 内部元素如何实现 mouseover/mousemove 事件?
我在使用 Collie 引擎 来开发一个简单的游戏,它提供了 mousedown、mouseup、click 这三个鼠标事件,但是我想实现的功能是:当我的鼠标移到元素上的时候,显示该元素的名字。但这个引擎并没有提供 mouseover 或 mousemove 事件。
Canvas 是不是只能通过获取指针在画面上的坐标,然后判断是否在元素的范围,来模拟这个事件?
如果是的话,有什么好的算法,用来判断指针是否在 x、y、width、height (或者是圆型 x、y、radius) 范围中?
如果不是的话,应该怎么做呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
自己看源代碼不就好了
和我想得一樣,就是循環判斷,比大小確定範圍,直到找到爲止。
想要實現 mouseover 啥的,自己照着 _fireEvent 調用 _getTargetOnHitEvent 即可
使用 addEventListener() 监听事件,并执行相应函数
可参考:http://canvas.migong.org/191.html