Звук не воспроизводится, когда я нажимаю на поле div - PullRequest
0 голосов
/ 15 мая 2019

У меня есть div с классом testspeech, и когда я нажимаю на это поле, начинает воспроизводиться звук из папки загрузок.Как я могу приостановить звук, если я снова нажму на тот же div?Конечным результатом является воспроизведение и пауза звука, как при обычной кнопке воспроизведения / паузы.

var obj = document.createElement("audio");
var counts = 0;
console.log(counts);
document.body.appendChild(obj);
obj.src = ".../wp-content/uploads/audios/Kalimba.mp3";
obj.load();
obj.volume = 0.3;
obj.preLoad = true;
obj.controls = true;
//obj.autoplay = true;

$(".testspeech").click(function() {
    if(counts == 0){
        console.log(counts);
        obj.play();      
    }
    else{
        obj.pause();
        counts = 0;   
        console.log(counts);
    }
});

Я использовал css, чтобы скрыть кнопку от экрана:

audio{
    display: none;
}

В данный моментзвук воспроизводится, когда я нажимаю на него, но он никогда не останавливается.

1 Ответ

1 голос
/ 15 мая 2019

Проверьте свойство "приостановлено" аудио.

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
<button class="testspeech">
play/pause
</button><br/>
<script>
var obj = document.createElement("audio");
document.body.appendChild(obj);
obj.src = ".../wp-staging/07/wp-content/uploads/audios/Kalimba.mp3";
obj.load();
obj.volume = 0.3;
obj.preLoad = true;
obj.controls = true;

$(".testspeech").click(function() {
   obj.paused?obj.play():obj.pause()
});
</script>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...