SVG弧与填充不响应悬停

时间:2016-07-19 19:17:03

标签: javascript d3.js svg

我正在使用Datamaps.js包裹的D3.js创建一个地图,显示各国之间的航线路线。到目前为止,我已经能够创建地图,以SVG的形式绘制弧形,并添加自定义插件功能,以便当我用鼠标悬停在它上面时它能够响应。

唯一的问题是当鼠标悬停在弧内以及边框上时会触发悬停功能:

When my cursor is where the arrow is, the hover bar is triggered.

我想修改它,以便仅在鼠标实际弧时触发悬停条。我认为这是我在实例化SVG时必须进行的修改,但如果我可以使用Datamaps进行更改,那就更好了。

请告诉我如何做到这一点。

1 个答案:

答案 0 :(得分:1)

通过更改与arc SVG关联的指针事件,可以通过简单的CSS实现此解决方案。假设您的SVG路径元素有一个类,例如" datamaps-arc",将以下代码行添加到CSS应该可以解决问题:

.datamaps-arc {
    pointer-events:visibleStroke;
}

详细了解如何操作SVG here的指针事件目标。