我正在尝试在滚动时为 SVG 设置动画,我已经使用数学创建了我自己的 SVG 路径,并且它显示的正是我需要的,但是当我尝试使用 CSS {{ 在路径上添加效果时问题开始了1}}
我的问题是:动画从两个点开始,一个从开始,另一个在 q 命令之后,只要我使用了两次移动命令,一个在开始,一个在 q 曲线命令之后。
我一直试图解决这个问题,但它完全改变了绘制的 SVG。
这里有一个片段来解释它是如何与我一起工作的,
stroke-dasharray
const shape = document.querySelector('#shape');
window.addEventListener('scroll',slide);
function slide() {
let value = 2000 - scrollY*4;
shape.style.strokeDashoffset= value;
}
body {
background:black;
-webkit-user-select:none;
}
#svgdiv {
position:fixed;
margin:auto;
top:1rem;
width:95%;
}
#div1 {
height:30rem;
}
#shape {
stroke-dashoffset:2000;
stroke-dasharray: 2000;
}
#shapebg {
stroke-dashoffset:2000;
stroke-dasharray: 0;
}
#div2 {
height:19rem;
}
如你所见,它从两点开始,但我需要动画从头开始并直接结束,
有什么提示吗?