我一直在讨论这个问题已有一段时间了,我希望有人可以帮助我。
我正在构建一个Web应用程序,您可以在SVG中绘制线条(“折线”)和符号(“圆圈”)。我想做的是在一条线上放置一个符号。使它对齐线。我还希望它在使用平板电脑时可用,因此我创建了一个具有偏移量的自定义光标。这样,您可以在使用Tablet PC时准确定位光标。
我想到了两个选项。每个都有一个我不知道如何解决的问题。
选项1:在线上放置符号时使用悬停/触摸事件。不幸的是,因为我使用带偏移的自定义光标,这会导致问题。有没有办法操纵DOM让它认为悬停事件发生在屏幕的其他地方(在特定的div中)?
选项2:计算正确的位置。我想出了如何计算'虚构'三角形的高度(线到光标)。所以我可以选择符号应该放在哪一行。不幸的是,计算所选行的位置是更多的代码。由于该代码将在onmousemove / touchmove上运行,我担心此代码会使UI不稳定。
提前感谢任何可以帮助我的建议。