Ниже представлен скрипт, работающий не во всех смартфонах. А имеенно: 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>
Виртуальный выделенный сервер (VDS) становится отличным выбором
Не взирая на то, что спецификацию ES6 выпустили в 2015 году, даже в 2019 NodeJS всё ещё не реализует этот стандартПоддержка всё ещё экспериментальная...