当我按下键盘上的“向上箭头”按钮时,我希望我的音频淡出并停止。它似乎淡出,然而,它再次出现,永不停止。
music.html:48 Uncaught IndexSizeError:无法在'HTMLMediaElement'上设置'volume'属性:提供的卷(-0.1)超出[0,1]范围。
我是Javascript的初学者。
这是我的代码。
HTML
lookAt
的Javascript
<body>
<input type="text" size="3" value="1" id="numtext" style="font-size:500px" >
<audio id=1>
<source src=BGM/a.mp3>
</audio>
<audio id=2>
<source src=BGM/b.mp3>
</audio>
<audio id=3>
<source src=BGM/c.mp3>
</audio>
</body>
有什么建议吗?
答案 0 :(得分:0)
您的淡入淡出功能需要检查其分配的音量是否介于0和1之间。由于您只是将音量调低,您只需检查它是否大于0。
var interval
var timeout
document.onkeydown = function() {
if(event.keyCode == 38){
interval = setInterval(fade, 200);
}
}
function fade() {
var x = document.getElementById('numtext').value;
var sounds = document.getElementById(x);
var newVolume = sounds.volume - 0.1;
// Check if the newVolume is greater than zero
if(newVolume >= 0){
sounds.volume = newVolume;
}
else{
// Stop fade
clearInterval(interval);
sounds.volume = 0;
sounds.pause();
sounds.currentTIme = 0;
}
}
我已经在这里删除了不必要的代码。