Вход

Просмотр полной версии : Не запускается audio на смартфоне


hosts
03.07.2017, 10:12
Здравствуйте.
Имеем такой код. Он воспроизводит по клику mp3 файл, ссылка на который берется с другой страницы через ajax. Этот код отлично работает на компьютерных браузерах, но вот на смартфоне, в частности проверяю на андроиде, при нажатии на кнопку плей (main-news-play), плеер не воспроизводится. В чем может быть проблема? Если что могу предоставить ссылку на сайт.

$(document).ready(function() {
$('body').on('click', '.main-news-play', function(){
$('.play-box').remove();
$('.pause').hide();
$('.main-news-play').show();
$('.main-news-title').removeClass('active-song-title');
var sdsdf = $(this);
var playPage = $(this).attr('rel');

var currentBlock = $(this).parent();
$.ajax({
url: playPage,
success: function(data){
var currentAudioLink = $(data).find('.full-news-player .dleaudioplayer li').data('url');

$('body').append('<audio class="play-box" controls autoplay="autoplay"><source src="'+currentAudioLink+'" type="audio/mpeg"></audio>');
sdsdf.hide();
currentBlock.find('.pause').show();
currentBlock.parent().parent().find('.main-news-title').addClass('active-song-title');

}
});
});

$('.pause').click(function(){
$('.play-box').remove();
$('.main-news-play').show();
$(this).hide();
$('.main-news-title').removeClass('active-song-title');
});
});

<div class="main-news-buttons">
<div class="pause"></div>
<div class="main-news-play" rel="тут ссылка, откуда js берет mp3"></div>
</div>

hosts
03.07.2017, 20:45
Например браузер смартфона не поддерживает audio, проверь:
<audio controls>
<source src="file.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>

Браузер поддерживает. Если воспроизводить напрямую через тег audio, то нормально включается. А у меня же стоит кнопка, так сказать, "посредник":
<div class="main-news-play" rel="тут ссылка, откуда js берет mp3"></div> При нажатии на эту кнопку должен воспроизводиться плеер, выводимый тегом audio, а он ни в какую не хочет.
Заметил особенность, это не работает только в браузерах хром и опера - на смартфонах конечно же, а на firefox и uc browser работает.
Ерунда какая-то. Дело наверное в скрипте. Не знаю чего еще не хватает.

hosts
03.07.2017, 21:00
По-моему понял в чем проблема. Не работает автовоспроизведение в хроме и опере - autoplay="autoplay"
Есть варианты как заставить работать?