我和你一起工作
howler.js 2.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() function和volume属性。似乎都没有用。
JsFiddle:https://jsfiddle.net/umx2bdm8/
我遗漏了什么?此外,我注意到,如果您多次单击play,多个相同声音的实例开始播放。我不希望这样,在特定的play实例上点击howl应该总是与该实例一起工作。
发布于 2016-05-29 01:08:39
如果查看volume,就会发现volume是一个函数,而不是可分配的属性,您需要传入新卷作为参数来设置卷。因此,您需要执行sound.volume(value)而不是sound.volume = value。
sound = new Howl({
src: 'http://www.hochmuth.com/mp3/Tchaikovsky_Rococo_Var_orch.mp3',
loop: true,
volume: 0.5
});
updateVolume = function(value) {
console.log('before update volume:', sound.volume());
sound.volume(value);
console.log('after update volume:', sound.volume());
}<script src="https://cdnjs.cloudflare.com/ajax/libs/howler/2.0.0-beta13/howler.min.js"></script>
<button onclick="sound.play()">
Play
</button>
<button onclick="updateVolume(0.15)">
Change volume to 0.15
</button>
(为了演示目的,我切换了上面的音量值,这样听众就不用担心当他们点击这个按钮时,音乐会不会突然震耳欲聋。)
https://stackoverflow.com/questions/37505091
复制相似问题