1

当用户滑动到下一页时,客户端希望对声音产生淡入效果。我知道您可以使用 setTimeout 和音量来实现相同的效果,但 IOS 不允许 JavaScript 更改音量,它只能由用户控制(https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual /Using_HTML5_Audio_Video/Device-SpecificConsiderations/Device-SpecificConsiderations.html#//apple_ref/doc/uid/TP40009523-CH5-SW10)。以下代码适用于桌面,但不适用于 IOS。我还有其他方法可以使用吗?

function fadeVolume(volume, callback)
{
    var factor  = 0.1,
        speed   = 100;
    if (volume > factor)
    {
        setTimeout(function(){
            fadeVolume((document.getElementById('coverAudio').volume -= factor), callback);         
        }, speed);
    } else {
        console.log('failed');
    }
}
fadeVolume(document.getElementById('coverAudio').volume, function(){
    console.log('fade complete');
});
4

0 回答 0