看起来SVG对象属性"pointer-events“的"visible”值在更新版本的Firefox中并没有得到尊重(在v34和v35中得到了确认)。
我在SVG中嵌入了具有以下定义的图像:
<image x="10" y="10" id="svg-image1" width="300" height="200" xlink:href="http://css-plus.com/examples/2012/03/gaussian-blur/i/fence.jpg" />
<image x="10" y="210" id="svg-image2" width="300" height="200" xlink:href="http://css-plus.com/examples/2012/03/gaussian-blur/i/fence.jpg" pointer-events="visible" visibility="hidden" />
第二个图像在绘制时不会在SVG中显示为可见,但是当单击第二个图像所在的区域时,将触发单击事件。我已经确认Chrome具有预期的行为,如果指针事件设置为“可见”,则隐藏元素上的单击事件不会触发,但会触发第一张图像的单击事件。
火狐这里:http://jsfiddle.net/d9uqo33j/你可以通过点击火狐中可见图片的下方来重现。
你知道为什么会这样吗,或者如何从Firefox中获得预期的行为吗?它考虑pointer-events="none“,但有许多地方我可能会切换可见性,我不希望每次切换图像可见性时都要记住重置指针事件或鼠标处理程序。
发布于 2015-01-15 03:23:15
在我得到bug fixed之前,你可以让他们display=为“none”。
发布于 2015-01-15 02:42:08
https://stackoverflow.com/questions/27949792
复制相似问题