无法用html中的js播放音频

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法用html中的js播放音频相关的知识,希望对你有一定的参考价值。

我写了一些随机播放一些音频的代码。但是没有用。请帮助我。这是我的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>
答案

首先,你设置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

以上是关于无法用html中的js播放音频的主要内容,如果未能解决你的问题,请参考以下文章

ios微信上无法自动播放音频的情况

无法对非静态方法 getAssets() 进行静态引用 - 无法在片段中播放音频

如何在 Java 中播放(MIDI)序列中的音频剪辑?

使用主播放列表时,HLS.js 一次加载所有子片段

js --自动播放音频

android应用程序中的音频无法播放