【问题标题】:SVG pulse animation on IE/EdgeIE/Edge 上的 SVG 脉冲动画
【发布时间】:2020-04-21 05:42:52
【问题描述】:

我在 svg 圆圈上有脉冲动画,但圆圈的 transform: scale 在 IE/Edge 上不起作用。在其他浏览器上效果很好。有没有办法在没有任何 jquery 插件的情况下解决这个问题?

  .cls-1, .cls-3, .cls-4, .cls-5, .cls-6, .cls-7, .cls-8 {
    transform: scale(0,0);
    -ms-transform: scale(0,0);
    -webkit-transform: scale(0,0);
    -moz-transform: scale(0,0);
    -o-transform:scale(0,0);
    opacity: 0;
    transform-box: fill-box;
    transform-origin: 50% 50%;
    animation: pulse 2s infinite cubic-bezier(.5,.5,0,1);
  }

@keyframes pulse {
    25% {
        opacity: 0.4;
    }

    100% {
        transform: scale(1);
        -ms-transform: scale(1);
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -o-transform:scale(1);
    }

}

Codepen:https://codepen.io/burianovata/pen/oNjxqom

【问题讨论】:

    标签: html css animation svg


    【解决方案1】:

    解决方案是使用 JQuery 更改圆半径。在所有浏览器上都一样,不需要额外的插件。我还尝试了 GSAP3——transform-origin 和 Snap.svg 有问题——尽管它也会影响半径属性,但它在 IE/Edge 上不起作用。示例在上面列出的 Codepen 链接上。

    //Change radius to zero
    function scale() {
      if($('.map-circle').length) {
        $('.map-circle')
          .animate(
          {'radius': 0},
          {
            step: function (radius) {
              $(this).attr('r', radius);
            },
            duration: 800
          }
        );
      }
    }
    
    //Change radius to initial size - 35.5
    function pulse() {
      if($('.map-circle').length) {
        $('.map-circle')
          .animate(
          {'radius': 35.5},
          {
            step: function (radius) {
              $(this).attr('r', radius);
            },
            duration: 1200
          }
        );
      }
    
    }
    
    // Infinite animation
    function animation() {
      setInterval(
        function () {
          pulse();
          scale();
        }, 1000);
    }
    
    animation();
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-10
      • 2018-06-04
      相关资源
      最近更新 更多