我使用画布创建了一个圆圈并将其分成几行。我想要一个特定区域的坐标:如果我点击一个特定区域,那就应该是可点击的。
以一个单词轮游戏为例,其中圆被划分为许多区域,这些区域具有不同的坐标,并且一些字母放置在划分的区域内。如果我想单击带有字母“A”的特定区域,则应单击“A”并应显示在文本框中。
我如何做到这一点?
答案 0 :(得分:1)
形成画布的元素不会被记住,因此不是交互式的 - 只要将它们提交到画布,它们就会被包含在集合中。它们不是像DOM元素那样的单独元素。
解决方法是自己记住事物的位置,听取canvas元素的点击,然后通过你自己的逻辑计算出点击的位置。
这不重要。像Kinetic这样的图书馆让它变得简单。使用这样的API可以节省大量时间 - 比如使用jQuery作为DOM而非vanilla JS。