所以我有一个音量滑块代码。它的作用是在加载滑块后改变音量时播放声音。例如,如果滑块的默认值为50,则在加载音频文件后不会立即播放声音,您需要将值更改为更高或更低,以便声音可以出现。所以我需要JavaScript的帮助。我该怎么做才能在加载时开始播放声音?
完整代码:https://www.w3schools.com/code/tryit.asp?filename=FQZVZUX36JFD
JS:
$("#volume").slider({
min: 0,
max: 100,
value: 50,
range: "min",
slide: function(event, ui) {
setVolume(ui.value / 100);
}
});
var myMedia = document.createElement('audio');
$('#player').append(myMedia);
myMedia.id = "myMedia";
playAudio('http://listen.shoutcast.com/newfm64aac-', 0);
function playAudio(fileName, myVolume) {
myMedia.src = fileName;
myMedia.setAttribute('loop', 'loop');
setVolume(myVolume);
myMedia.play();
}
function setVolume(myVolume) {
var myMedia = document.getElementById('myMedia');
myMedia.volume = myVolume;
}
答案 0 :(得分:2)
Google recently released a browser update that prevents initial playing or autoplaying of media elements(注意:不是这个答案的解决方案,而是针对类似案例的潜在解决方案。)
答案 1 :(得分:1)
您通过此调用将初始音量设置为零:
playAudio('http://listen.shoutcast.com/newfm64aac-', 0);
要让它以默认值50加载,您的通话应为:
playAudio('http://listen.shoutcast.com/newfm64aac-', 50);