当您单击 SVG 的不同部分时,是否可以制作弹出窗口?

Is there away to make popups that open when you click different parts of an SVG?

有没有办法在您单击 SVG 的不同部分时打开弹出窗口(不是完全不同的页面)?

我知道如果你向 SVG 元素添加一个 link 你可以这样做:

<a xlink:href="google.com" >
    <rect x="341.2" y="375.5" class="st48" width="321" height="207.4"/>
</a>

并且您可以在 div 元素中包含一个弹出窗口。

在 svg 元素中附加弹出窗口 link 会类似吗?

是的,您可以通过多种方式做到这一点。您可以使用 document.querySelector('svg [part]) 为 svg 的任何部分(svg 标记内的任何节点)轻松设置 onclick 函数(检查 here 以获得正确的 CSS您的用例的组合器)。

Here is a quick example on JSFiddle.

如果您想要更加复杂,您可以在 SVG 的任何部分创建一个透明形状作为您的 onclick 区域。