You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

原生JS缩放动画在各浏览器正常,仅Firefox无法执行缩放

滚动触发SVG缩放动画在Firefox中失效问题及解决

我用div包裹内联SVG,通过原生JS实现了由用户滚动触发的移动及缩放动画。该动画在Chrome、Edge、Safari Mobile等浏览器中均可正常触发,移动动画能正常执行,但Firefox无法完成SVG的宽度和高度缩放,这是网站上线前仅剩的问题。

代码实现

HTML代码

<div id="pepper-logo" onclick="navClick()" onmouseover="logoOpacity(this)" onmouseout="logoNormal(this)">
  <svg>
     ...
  </svg>
</div>

JS代码

window.addEventListener('scroll',function(e) {
  if (document.body.scrollTop > 10 || document.documentElement.scrollTop > 10) {
    logoText.style.opacity='0';
    logo.style.left="60px";
    logo.style.top="-10px";
    logo.style.opacity="0.65";
    logoSVG.style.width="90";
    logoSVG.style.height="130";
    logo.style.zIndex='2';
    logoPath.style.fill="#62b564";
  }
});

问题解决

设置SVG宽高时未指定单位,补充单位后Firefox中的缩放动画正常生效。

内容的提问来源于stack exchange,提问作者Lacomus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 11:15:19