Script не работает в смартфонах

168
17 июля 2019, 15:20

Ниже представлен скрипт, работающий не во всех смартфонах. А имеенно: IPhone 5,6, Android 4.4, Galaxy - не работает; Требуется внести правки.

let play = document.querySelector('.play');
// создаем объект AUDIO
const audio = new Audio();
// сразу выставляем уровень звука на средний
let volume = .5
audio.volume = volume;
// присваиваем объекту AUDIO трек
audio.src = 'https://api.soundcloud.com/tracks/344175395/stream?client_id=LvWovRaJZlWCHql0bISuum8Bd2KX79mb';
// показываем какой уровень выставлен
document.querySelector('.vol').innerHTML = audio.volume * 10;
// функция для понижения уровня звука 
document.querySelector('.volume-down').addEventListener('click', () => {
  if (audio.volume !== 0) {
    volume -= .1;
    // метод .toFixed() нужен для того чтобы убрать 
    // все лшние цифры кроме первой после точки
    audio.volume = volume.toFixed(1);
    document.querySelector('.vol').innerHTML = audio.volume * 10;
    audio.muted = false;
  }
});
document.querySelector('.volume-up').addEventListener('click', () => {
  if (audio.volume !== 1) {
    volume += .1;
    audio.volume = volume.toFixed(1);
    document.querySelector('.vol').innerHTML = audio.volume * 10;
    audio.muted = false;
  }
});
// функция для полного отключения звука
document.querySelector('.mute').addEventListener('click', () => {
  audio.muted = audio.muted == false ? true : false;
})

// функция для запуска и паузы музыки
play.addEventListener('click', () => {
  if (audio.paused) {
    audio.play();
    play.classList.add('fa-pause');
    play.classList.remove('fa-play');
  } else {
    audio.pause();
    play.classList.remove('fa-pause');
    play.classList.add('fa-play');
  }
})
<link href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" rel="stylesheet" />

<!--кнопка запуска плеера она же и пауза-->
<button class=" play fa fa-play"></button>
<!--кнопка понижения  звук-->
<button class="volume-down">-</button>
<!--кнопка повышение звука-->
<button class="volume-up">+</button>
<!--уровень звука-->
<span class="vol"></span>
<!--кнопка отключения звука-->
<button class="mute">Mute</button>
READ ALSO
inject svg файла при изменении html документа

inject svg файла при изменении html документа

Есть небольшая gulp сборка для проекта

112
Почему NodeJS так долго не реализует поддержку модулей ES6?

Почему NodeJS так долго не реализует поддержку модулей ES6?

Не взирая на то, что спецификацию ES6 выпустили в 2015 году, даже в 2019 NodeJS всё ещё не реализует этот стандартПоддержка всё ещё экспериментальная...

100
Работа Reverence Type [дубликат]

Работа Reverence Type [дубликат]

На данный вопрос уже ответили:

127