Html5 audio - soundmanager2:如何确定音量属性是否可以改变



我使用soundmanager2库(http://www.schillmania.com/projects/soundmanager2)提供跨浏览器音频支持,这工作得很好。
但IOS设备不允许设置HTML5音频音量属性。所以我想检测是否有可能使用这个功能来改变我的网站的外观(例如隐藏音量控制)。

如果我在ios-safari中改变soundmanager2声音对象的音量属性,soundmanager2音量属性会改变,并且不能解释HTML5音频对象的音量属性总是保持1的事实。

所以我的解决方案如下:

$(function(){
  soundManager.onready(function(){
    voltest = soundManager.createSound({
      id: "testid",
      url: some_valid_audio_url,
      autoLoad: false,
    });
    if (voltest.isHTML5) {
      var html5audio = new Audio();
      html5audio.volume = 0.34;
      if (html5audio.volume == 0.34) {
        $("html").addClass("volchange");  
      }
    } else {
      $("html").addClass("volchange");
    }
    voltest.destruct();
  });
});

我喜欢我的解决方案,并认为它可能对其他人有用。

最新更新