我正在制作一个避免游戏的小行星,当我的生活结束时,我正在执行以下代码:
gameover.play();
而gameover的定义如下:
var gameover = new Audio('gameover.wav');
当我执行代码时,它会循环播放声音,而我只想播放一次,我该怎么做?谢谢。
最佳答案
我相信将 loop
属性设置为false
将实现您的目标。
var birdSound = new Audio('http://www.noiseaddicts.com/samples_1w72b820/4929.mp3');
birdSound.loop = false;
birdSound.play();
var birdSound = new Audio('http://www.noiseaddicts.com/samples_1w72b820/4929.mp3');
birdSound.loop = false;
birdSound.play();
var statusElem = document.getElementById('status');
var startTime = Date.now();
updateStatus();
function updateStatus(){
if (birdSound.ended){
statusElem.innerText = 'Stopped';
} else {
statusElem.innerText = 'Playing (' + ( ( Date.now() - startTime ) / 1000 ) + ')';
window.setTimeout(updateStatus, 50);
}
}
Audio Status: <span id="status">Playing</span>
经过测试: