我正在设计一个实验,我希望线条不透明度在给定的时间范围内改变,而不是点击按钮
// Setup event handler
this.options.events['click button'] = () => {
getLines().forEach(line => {
line.style.opacity -= step
})
}
你可以
使用 setInterval
let opacity = 1;
const reduceOpacity = function(){
getLines.forEach(line =>{
line.style.opacity = opacity;
})
opacity -= 0.1;
}
const myTimer = setInterval(reduceOpacity, 1000);
我做了一个小提琴来说明 https://jsfiddle.net/ninjasoards/bwzg3xfp/
我添加了一个触发clearInterval((的停止按钮。
仅 CSS 答案
您也可以为此使用 CSS(以及更多(
.fade-out {
animation: hide 4s ease-in forwards;
}
@keyframes hide {
0% { opacity: 1; }
100% { opacity: 0; }
}
看到这个小提琴 https://jsfiddle.net/ninjasoards/xcbw1gdr/
左圆淡出并保持淡出,右圆无限淡入淡出。
您可以尝试使用setTimeout
函数,该函数将在指定的毫秒数后触发。
setTimeout(() => {
getLines().forEach(line => {
line.style.opacity -= step
});
}, 2000);