1
我有一个问题 像iPad和Android的一些设备你不能改变视频标签音量因为这个设备上不支持音量API。哟一个想法如何我可以检测,如果这不是支持?HTML5视频标签音量支持
我有一个问题 像iPad和Android的一些设备你不能改变视频标签音量因为这个设备上不支持音量API。哟一个想法如何我可以检测,如果这不是支持?HTML5视频标签音量支持
我能想出的最好的是这样的:
function volumeChangeSupported() {
var ua = navigator.userAgent.toLowerCase();
// got information from jplayer:
var noVolume = /ipad|iphone|ipod|android|blackberry|windows ce|windows phone|webos|playbook/.exec(ua);
if (noVolume) {
if (noVolume[0] === 'android' && /gecko/.test(ua)) {
// Firefox on android DOES support changing the volume:
return true;
}
else {
return false;
}
}
return true;
}
这并不是真正的“检测”为改变音量支持。我从jPlayer中获得了部分信息,部分来自我自己在旧版Android 3平板电脑上测试Firefox 19的体验。谁知道Android手机上的Firefox或不同的Android版本的行为是否有所不同。
但是在这之前我想检测体积变化支持这样的:
function volumeChangeSupported() {
var audio = new Audio();
audio.volume = 0.5;
return audio.volume === 0.5;
}
这得到正确的结果为iPhone的Safari和Android的Firefox,但不支持其他的Android浏览器(以下简称“Android浏览器”和“海豚“,它不能改变音量,但有audio.volume === 0.5
为真)。