我有一个非常简单的javascript代码,它会在图像的鼠标悬停时开始音频播放,而在鼠标悬停时停止音频播放。

如何更改第二个功能,使其逐渐淡出声音,而不是突然停止?

我看过其他类似的问题,但不幸的是,我仍然坚持。

<img onmouseover="PlaySound('mySound')"
    onmouseout="StopSound('mySound')"
    src="tictactoe.png">

<audio id='mySound' src='audio.mp3'/>

<script>
    function PlaySound(soundobj) {
        var thissound=document.getElementById(soundobj);
        thissound.play();
    }

    function StopSound(soundobj) {
        var thissound=document.getElementById(soundobj);
        thissound.pause();
        thissound.currentTime = 0;
    }
</script>

它可以按原样有效地工作,但是最好添加淡出元素。我知道这是将音量设置为随着时间的推移而减小,但是我不确定这样做的正确方法。

最佳答案

您是否尝试过使用setInterval()并将thissound.volume递减为0,然后递减pause()

也许增加声音的开始也是一件不错的事情

关于javascript - 如何创建一个JavaScript函数,在鼠标移出时淡出音频?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54650900/

10-09 08:22