-1
<!DOCTYPE html> 
<html> 
<body> 

<img id="myImage" onclick="aud_play_pause()" src="../../images/off.png" alt=""/>

<audio id="myAudio">
</audio>

<script>
    function aud_play_pause()
    {
        var song = ["../Sesler/3.mp3"];
        var myAudio = document.getElementById("myAudio");
        var image = document.getElementById('myImage');
        myAudio.src = song;
        if (myAudio.paused)
        {
            image.src = "../../images/on.png";
            myAudio.play();
        }
        else if(image.src.match("on"))
        {
            image.src = "../../images/off.png";
            myAudio.pause();
        }
    }
</script>

</body> 
</html>

やあ、

なぜ機能しないのか理解できませんでした。クリックすると開始する(開始する)と想定されており、もう一度クリックするとポーズする(しない)と想定されています。「else if」ステートメントが機能しないと思いますが、なぜですか?

ありがとう、

H. カグラー

4

1 に答える 1

0

srcユーザーがボタンをクリックするたびにオーディオを設定します。その後、ロード直後に起動します。関数の外に移動し、配列[...]を使用せず、文字列のみを使用します。

 myAudio.src = "../Sesler/3.mp3";

次に、else(別の条件なしで)再生と一時停止を区別するのに十分なはずです。

if (myAudio.paused) {
    image.src = "../../images/on.png";
    myAudio.play();
} else {
    image.src = "../../images/off.png";
    myAudio.pause();
}
于 2016-06-11T16:20:00.483 に答える