我使用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();
});
});
我喜欢我的解决方案,并认为它可能对其他人有用。