D3事件在隐藏的svg元素上触发

atmd

我似乎找不到答案,我花了一段时间才将它重新制作成独立的小提琴/笔,但我终于有了。

我正在研究使用D3绘制和处理svg图形的Vaadin应用程序。在某一点上,屏幕上有svg visibility:hidden

在所有浏览器中都能完美找到。

这些隐藏的元素具有单击和鼠标悬停事件,可以在所有浏览器中再次找到它们。但是在firefox版本34中,当隐藏的元素仍处于隐藏状态时,它们仍会触发其事件(单击和鼠标悬停)。

更好地说明:隐藏按钮时,不应将其mouseover事件触发,而在按钮可见时应将其触发。这就是它在除Firefox 34、35 beta和36开发版以外的所有浏览器中的工作方式。在Firefox 31中工作正常。

我怀疑这是D3中的错误,但想要第二意见或让其他人指出我的错误。值得注意的是,display:none该元素的设置在Firefox 34及更高版本中适用,但是我不认为问题出在那

我创建了一个jsbin来演示代码,其中有两个橙色图标,visibility:hidden如果您将鼠标悬停在带有chrome的隐藏元素上,则没有一个橙色图标(您可能需要禁用才能看到它)。但使用Firefox 34时,事件触发了。这是jsBin

知道为什么会触发吗?我猜是D3问题或firefox错误,但是我想把它固定下来,以修正我的代码以帮助解决其他方面的问题。

谢谢

罗伯特·朗森

这只是Firefox中的错误。如果您报告,我会解决。

给定指针事件的特定值,我们可以确切地说出元素是否应该接收事件。如果我们不知道指针事件具有什么值,则该元素可能会或可能不会收到指针事件。这就是规范要说的全部。这里没有歧义。

请注意,firefox错误仅影响<image>元素。如果将图像替换为<rect>元素,即使在Firefox中也应看到正确的结果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

d3 SVG线元素未触发onclick事件

来自分类Dev

在mouseenter(D3)上放大svg组元素

来自分类Dev

元素上的d3 mouseover与svg mousemove冲突

来自分类Dev

如果我将 svg 附加到 div,d3 鼠标悬停事件不会触发

来自分类Dev

d3如何在文本后面的对象上触发事件

来自分类Dev

如何将SVG元素的属性传递给D3中的新事件?

来自分类Dev

在离开D3中的边界区域之前,将元素分组上的Mouseout触发

来自分类Dev

如何手动触发d3的拖动事件

来自分类Dev

在d3中设置一个单击事件以隐藏所有其他元素

来自分类Dev

为什么在力模拟中d3 voronoi多边形拖动事件未在多边形上触发?

来自分类Dev

D3:通过叠加的SVG检测鼠标滚轮事件

来自分类Dev

在D3和弦图中隐藏文本元素

来自分类Dev

如何隐藏根状图d3中的根元素

来自分类Dev

在D3中单击鼠标即可显示/隐藏元素

来自分类Dev

Snap.svg-在可悬停元素的子元素上停止悬停事件重新触发

来自分类Dev

SVG元素上的3D转换

来自分类Dev

d3.js点击事件显示/隐藏html元素

来自分类Dev

d3.js点击事件显示/隐藏html元素

来自分类Dev

SVG元素的D3多行工具提示

来自分类Dev

在d3中获取所选svg元素的类

来自分类Dev

删除d3 svg元素以重画

来自分类Dev

d3 vs. svg处理元素时

来自分类Dev

D3:将滤镜添加为SVG元素的背景

来自分类Dev

D3:基于svg元素更改数据

来自分类Dev

为D3和SVG元素创建动画

来自分类Dev

如何切换 D3 SVG 元素的位置

来自分类Dev

当我使用D3将鼠标悬停在第二个SVG的元素上时,如何更改SVG中的元素的属性

来自分类Dev

如何在堆叠的SVG元素上触发鼠标悬停事件

来自分类Dev

SVG上的JQuery事件未触发

Related 相关文章

热门标签

归档