操作svg文件,怎么把光标转换svg内的相对坐标?

新手上路,请多包涵

需求是这样的,我点击svg上的某个位置,触发点击事件,通过event拿到的屏幕光标位置怎么转换成点击svg的相对位置?

阅读 2.8k
2 个回答

MouseEvent 理应包含事件相对于目标元素的位置 MouseEvent.offsetXMouseEvent.offsetY
SVG 点击事件应该没有另立门户,但如果真没有这两个属性的话,就只能获取 SVG 的位置,然后换算了,就是个加减法。

大概思路就是,拿到鼠标的坐标(x1,y2),
然后减去svg图片的左上角(x2,y2),
这样得到的就是相对svg左上角开始的坐标了(x3,y3)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题