svg在Firefox

时间:2018-03-21 09:25:28

标签: firefox svg hover z-index

我有一个svg,其中一些圈子在悬停时会变得更大,这里是一个片段

!这不适用于Firefox

var svgRoot = $('.svg-root')[0];

$('.bubble').mouseover(function (e) {
        svgRoot.append(e.currentTarget);
    });
circle{
  transition: all 200ms;
}
circle:hover{
  stroke: black;
  fill: white;
  transform: scale(3);
}
.svg-root svg{
  overflow: visible;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<svg class="svg-root">
  <svg class="bubble" x="50" y="50">
    <circle r="10"></circle>
  </svg>
   <svg class="bubble" x="70" y="70">
    <circle r="10"></circle>
  </svg>
   <svg class="bubble" x="90" y="50">
    <circle r="10"></circle>
  </svg>
</svg>

为了避免其他圆圈与鼠标当前悬停的圆圈重叠,我使用了追加技巧。这解决了z-index问题,但它导致了另一个问题。似乎在附加节点后,Firefox无法识别光标的悬停状态。在Firefox中悬停时圈子不会缩放,但它们会在Chrome中。

我需要它们在悬停时进行缩放,并且在执行此操作时具有最高的z-index。

任何解决方案?

0 个答案:

没有答案