【问题标题】:How to play music from local folder in html audio control? [duplicate]如何在 html 音频控制中播放本地文件夹中的音乐? [复制]
【发布时间】:2017-10-27 16:40:23
【问题描述】:

这里是音频控制。当我将路径放在浏览器中时,什么都没有显示。

    <audio  controls="controls">
        <source src="E:/Songs/ROCK ON2/Rock On 2/You Know What I Mean(Mr-Jatt.com).mp3" />
    </audio>

【问题讨论】:

    标签: html


    【解决方案1】:

    您需要对文件路径进行 url 编码。它不知道如何处理文件名中的空格。所以要么encode it要么删除该路径每个部分的所有空格。

    【讨论】:

    • 如果我从路径中删除空格,路径将会改变。
    • 嗯,是的。这正是我在这里所说的。您需要以某种方式符合该路径,无论是手动还是使用 encodeURI
    • 我给了 src="E:/Lean On-(Mr-Jatt.com).mp3" 这是正确的路径。但它仍然无法播放歌曲。以及如何使用encodeURI??
    • 检查我的答案中的链接。
    【解决方案2】:

    如果您尝试播放本地文件,您可以使用&lt;input type="file"&gt; 将文件作为File 对象获取并创建文件的Blob URL 以在change 事件的&lt;audio&gt; 元素的.src 处设置&lt;input type="file"&gt; 元素。

    <input type="file">
    <audio controls></audio>
    <script>
    var input = document.querySelector("input[type=file]");
    var audio = document.querySelector("audio");
    input.onchange = function() {
      audio.src = URL.createObjectURL(input.files[0]);
    }
    </script>

    【讨论】:

    • 实际上我有一个完整路径的歌曲列表。所以我希望当我点击任何歌曲时音频控件应该播放歌曲。
    • 你在哪个浏览器上尝试代码?
    • 你没有明白我的意思。我不想通过fileupload选择文件,我想直接播放。
    • @Swadesh “你没有明白我的意思。”你没有在之前的评论中回答这个问题。您在哪个浏览器上尝试代码?
    • 我正在使用谷歌浏览器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-03
    • 2019-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多