繁体   English   中英

已修复尝试在 HTML 中暂停/播放 MP3 文件

[英]FIXED Trying to Pause/Play MP3 file in HTML

希望有两个按钮,一个用于“暂停”,一个用于“播放”MP3 音频文件。 按钮显示但不暂停/播放音频,以及音频不播放任何内容。 这是我正在使用的代码。 谢谢。

HTML

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Loadingscreen</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    <script src="script.js"></script>
</head>
<body>
    <audio controls id="song">
        <source src="audio/music.mp3" type="audio/mpeg">
    </audio>
    <button onclick="playAudio()" type="button">Play</button>
    <button onclick="pauseAudio()" type="button">Pause</button>
    <div class="slides slowFade">
        <div class="slide">
            <img src="img/image1.jpg" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image2.jpg" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image3.png" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image4.jpg" alt="img"/ height="100%" width="100px">
        </div>
    </div>
</body>
</html>

JavaScript

var x = document.getElementById("song"); 

function playAudio() { 
  x.play(); 
} 

function pauseAudio() { 
  x.pause(); 
}

加载文档后,您必须加载 js 文件。

您应该将脚本放在 HTML 文件的末尾。 你使用var x = document.getElementById("song"); 获取 DOM 元素,但该元素尚未加载,因为您的脚本位于页面顶部,因此您可以这样更改代码:

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Loadingscreen</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    
</head>
<body>
    <audio controls id="song">
        <source src="audio/music.mp3" type="audio/mpeg">
    </audio>
    <button onclick="playAudio()" type="button">Play</button>
    <button onclick="pauseAudio()" type="button">Pause</button>
    <div class="slides slowFade">
        <div class="slide">
            <img src="img/image1.jpg" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image2.jpg" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image3.png" alt="img"/ height="100%" width="100px">
        </div>
        <div class="slide">
            <img src="img/image4.jpg" alt="img"/ height="100%" width="100px">
        </div>
    </div>
    <!-- the DOM will be available here -->
    <script src="script.js"></script>
</body>
</html>

最好在文件末尾加载 JS 文件,这样用户可以更快地看到 HTML。

如果由于任何原因你无法在页面末尾加载 js 文件,你可以这样更改你的 JS 文件:

function playAudio() { 
const x = document.getElementById("song"); 
  x.play(); 
} 

function pauseAudio() { 
const x = document.getElementById("song"); 
  x.pause(); 
}

您是否尝试过将 javascript 用于音频?

var myAudio = new Audio(myAudioLink)

然后做

function playMyAudio() {
myAudio.play()
}
function pauseMyAudio() {
myAudio.pause()
}

我很乐意提供帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM