Howler.js - 声音结束时褪色或音量发生变化时发生的火灾事件

时间:2018-01-31 18:41:00

标签: javascript howler.js

如果声音淡出完成后,如何自动触发事件sound.stop()(淡入目标音量= 0.3),并且一旦音量为0.6,还会显示警告弹出窗口?



<!DOCTYPE html>
<script src="https://rawgit.com/goldfire/howler.js/master/src/howler.core.js"></script>
<button onclick="Play()">Play</button>
<button onclick="StartFade()">Fade</button>

<script>
var sound = new Howl({
src: ['https://howlerjs.com/assets/howler.js/examples/player/audio/rave_digger.webm']});

function Play() sound.play();
function StartFade() sound.fade(1, 0.3, 2000);
</script>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

.fade()方法会触发&#34; fade&#34;完成后的活动。您可以将侦听器附加到声音对象

sound.on('fade', function(){
  console.log('#Faded!!');
});

或者,您可以在创建新的Howl时设置onFade()方法。

var sound = new Howl({
  src: ['https://howlerjs.com/assets/howler.js/examples/player/audio/rave_digger.webm'],
  onFade: function(){
    //stuff goes here!
  }

});

当音量达到0.6时显示警报,你可以链接你的回叫,所以第一个淡入淡出方法实际上只是从1到0.6,然后在事件监听器内,弹出警报,然后从0.6到新的淡入淡出0.3

使用onFade()和onVolume()方法,您也可以像这样写它,虽然它会在音量设置为0.6,淡入淡出或不亮时提高此警报。

onVolume: function(){
  if (this.volume == 0.6)
    alert("Volume is currently 0.6!");
}