下面的代码在桌面浏览器上可以正常工作(播放音乐)。但是,当我尝试在任何移动设备上打开网站时,都无法正常工作。
var music = new Audio("mscs/gamemusic.mp3");
function playmusic() {
music.controls = false;
music.loop = false;
music.autoplay = true;
document.body.appendChild(music)
}
游戏开始时我在函数中使用它:
function createnewgame() {
...
playmusic();
...
...
}
有人知道怎么了吗?
答案 0 :(得分:0)
好吧,这显然是浏览器支持问题。根据{{3}},<audio>
元素(而js的Audio
对象是用于此的接口)存在已知的支持问题,包括
和其他。不确定是否可以通过某些库克服此问题,但是由于autoplay
的限制是设计引入的,因此我不会指望解决方法...
答案 1 :(得分:0)
您可以尝试直接从JavaScript播放音频,而不是在html正文中添加var“音乐”。
function playmusic() {
music.play();
}
答案 2 :(得分:0)
某些移动浏览器支持音频的自动播放,但是ios,chrome和其他浏览器需要交互操作才能触发声音播放。您可以尝试使用静音属性... enter link description here