webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg

Кросплатформенный и кросбраузерный play() и muted?

Есть потоковое аудио и вот такой код:
/* play and stop button */
$(".logo").on('click',function () {
    $(this).toggleClass('active');
    if($(this).hasClass('active')){
        document.getElementById('player').play();
        document.getElementById('player').muted = false;
    }else{
        document.getElementById('player').muted = true;
    }
});

Работает нормально, но не везде. В мобильном хроме не работает muted а в гребаном ios не пашет play. Нужны костыли, но может быть где-то есть готовые? Плееры не предлагать, сам могу предложить.
  • Вопрос задан
  • 240 просмотров
Пригласить эксперта
Ответы на вопрос 2
bootd
@bootd
Гугли и ты откроешь врата знаний!
Плееры не предлагать, сам могу предложить.


Так может зайти в уже готовый и посмотреть, как там реализованы UI элементы для этого функционала?
Ответ написан
Sanasol
@Sanasol Куратор тега JavaScript
нельзя просто так взять и загуглить ошибку
Составляю запросы в гугл на заказ: js ios video play (или chrome опционально)

Сразу вылезает множество ответов на ваши вопрос.
Нельзя включать видео "когда хочется", браузеры решили это запретить. И Сафари и Хром.
Использовать play можно только когда юзер сам это сделает.

(auto)play и muted связаны при этом.

stackoverflow.com/a/12496184/1603055

Вот такой код будет работать
<input type="button" value="Play" onclick="document.myMovie.play()">


Вот такой код не будет.
<body onload="document.myMovie.play()">

В общем по запросу который выше всё написано про это, и про chrome тоже самое.

Отличная идея, как я сам не догадался, Вот спасибо, а я мучаюсь вопросы задаю. Но может быть все же кто-то под рукой этот код имеет, что б не шарить 2 часа по чужому коду.

С кроссбраузерностью это никак не связано.
Помучался за вас, потратил 3 минуты на просмотр video.js на гитхабе(топ1 плеер на гитхабе), чтобы увидеть что там нет никакой кроссбраузерности или магических функций.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы