首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >setAttribute平滑过渡

问setAttribute平滑过渡
EN

Stack Overflow用户
提问于 2021-09-12 10:38:08
回答 1查看 77关注 0票数 0

我尝试用纯javascript重新创建这个smil动画。

​

代码语言:javascript
复制
<svg viewBox="0 0 600 600">
<path id="foo" d="M10 10 C 20 20, 40 20, 50 10" stroke="black" fill="black">
  <animate
       attributeName="d"  to="M500 500 C 20 20, 40 20, 50 10"
       dur="5s" repeatCount="indefinite" />
  </path>
</svg>

​

这里的问题是,当我使用setAttribute在单击时重新创建动画时,动画会突然出现

代码语言:javascript
复制
var path = document.getElementById('foo');
path.addEventListener("click", function(){path.setAttribute('d','M500 500 C 20 20, 40 20, 50 10');});

我不知道如何让它像smil一样流畅,有没有办法让它像纯js一样呢?

EN

回答 1

Stack Overflow用户

发布于 2021-09-12 10:50:19

您可以在单击事件上开始动画。

​

代码语言:javascript
复制
<svg viewBox="0 0 600 600">
<path id="foo" d="M10 10 C 20 20, 40 20, 50 10" stroke="black" fill="black">
  <animate
       attributeName="d"  to="M500 500 C 20 20, 40 20, 50 10"
       dur="5s" begin="0s;foo.click" repeatCount="indefinite" />
  </path>
</svg>

​

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69150647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档