refactor: enhance audio fade-in logic for improved user experience

This commit is contained in:
2026-03-01 23:50:06 +01:00
parent eeda85f48f
commit f09405ed58
2 changed files with 8 additions and 115 deletions
+4 -3
View File
@@ -174,14 +174,15 @@
audio.loop = true;
audio.volume = 0;
audio.play();
const fadeInVolume = 0.15;
const fadeInDuration = 2000; // 2 seconds
const fadeInSteps = 20;
const fadeInStepTime = fadeInDuration / fadeInSteps;
const volumeStep = (1 - audio.volume) / fadeInSteps;
const volumeStep = (fadeInVolume - audio.volume) / fadeInSteps;
const fadeInInterval = setInterval(() => {
if (audio.volume < 0.3) {
audio.volume = Math.min(0.3, audio.volume + volumeStep);
if (audio.volume < fadeInVolume) {
audio.volume = Math.min(fadeInVolume, audio.volume + volumeStep);
} else {
clearInterval(fadeInInterval);
}