无法用html中的js播放音频

问题描述 投票:-1回答:1

我写了一些随机播放一些音频的代码。但是没有用。请帮助我。这是我的js文件(N.js),它随机选择一个音频并将其设置为已经实现的元素:

var x = document.getElementById("pl").value  = play ;
var play ;
const a1 = new Audio('078.mp3');
const a2 = new Audio('079.mp3');
const a3 = new Audio('080.mp3');
const a4 = new Audio('063.mp3');
const a5 = new Audio('072.mp3');
function main() {
   var n = Math.floor((0) + 4);
   return n;}
   y=main();
    switch (y) {
        case 0 : play=a1;
        case 1 : play=a2;
        case 2 : play=a3;
        case 3 : play=a4;
        case 4 : play=a5;
    }

和html文件:

<!DOCTYPE html>
<html lang="fa">
<script src="N.js"></script>
<audio controls>
    <source id="pl" src=play type="audio/mp3">
</audio>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<strong>something</strong>
</body>
</html>
javascript html
1个回答
0
投票

首先,你设置play但从不使用它。尝试将第一行`document.getEl ...)移动到设置游戏后。一般来说,你的代码有点混乱。如果您愿意,请尝试以下进一步更改

let audioFiles = [
  '078.mp3',
  '079.mp3',
  '080.mp3',
  '063.mp3',
  '072.mp3',
];

let randomI = Math.floor(Math.random() * audioFiles.length);
let audio = new Audio(audioFiles[randomI]);

document.getElementById("pl").appendChild(audio);
audio.play();

另外,有关什么是有效音频URL的详细信息,请参阅this mdn reference