Javascript在加载时播放音频

时间:2018-05-04 18:46:25

标签: javascript html audio slider volume

所以我有一个音量滑块代码。它的作用是在加载滑块后改变音量时播放声音。例如,如果滑块的默认值为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;
}

2 个答案:

答案 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);
相关问题