Javascript howler.js更新声音的音量

Javascript howler.js更新声音的音量,javascript,audio,howler.js,Javascript,Audio,Howler.js,我和你一起工作 howler.js2.0 但似乎找不到一个简单的更新卷的例子。下面是一些示例代码: window.sound = new Howl({ src:'http://example.com/assets/audio/background.mp3', loop: true, volume: 0.15 }); window.updateVolume = function(value) { alert('before update volume:', window.sound

我和你一起工作

howler.js2.0

但似乎找不到一个简单的更新卷的例子。下面是一些示例代码:

window.sound = new Howl({
 src:'http://example.com/assets/audio/background.mp3',
  loop: true,
  volume: 0.15
});

window.updateVolume = function(value) {
  alert('before update volume:', window.sound.volume());
  sound.volume = value;
  alert('after update volume:', window.sound.volume());
}
我尝试过使用
volume()函数
volume
属性。似乎都不管用

JsFiddle:

我错过了什么?另外,我注意到,如果您多次单击“播放”,同一声音的多个实例将开始播放。我不希望这样,在一个特定的
howl
实例上点击
play
应该总是能与该实例一起工作。

如果你看一下,它表明
volume
是一个函数,而不是一个可分配的属性,你需要将新的卷作为参数传入以设置卷。所以你需要做
sound.volume(value)
而不是
sound.volume=value

sound=新的嚎叫({
src:'http://www.hochmuth.com/mp3/Tchaikovsky_Rococo_Var_orch.mp3',
循环:对,
数量:0.5
});
updateVolume=函数(值){
console.log('更新前音量:',sound.volume());
声音。音量(值);
console.log('after update volume:',sound.volume());
}

玩
将音量更改为0.15

您是否还知道,如果您多次点击
播放
,为什么会播放多个声音实例?不,我不知道为什么–请不要提及应该发生这种情况。但是我知道可以通过将HTML更改为
onclick=“sound.stop();sound.play()”
来修复它。