Аудио плейлист в HTML

Я просто решил это, спасибо всем.

Я пытаюсь понять, как создавать аудио-плейлисты в html, поэтому я попытался следовать руководству здесь: https://thewikihow.com/video_vtZCMTtP-0Y (код представлен ниже), чтобы достичь своей цели. Единственная проблема заключается в том, что это не работает, когда песня заканчивается, она всегда возвращается ко второй песне в списке, а также консоль сообщает мне, что есть «Неперехваченное (в обещании) DOMException», и я не знаю, как это сделать. решать.

function audioPlayer() {
    var currentSong = 0;
    $("#audioPlayer")[0].src = $("playlist li a")[0];
    $("#audioPlayer")[0].play();
    $("#playlist li a").click(function(e) {
        e.preventDefault();
        $("#audioPlayer")[0].src = this;
        $("#audioPlayer")[0].play();
        $("#playlist li").removeClass("current-song");
        currentSong = $(this).parent().index();
        $(this).parent().addClass("current-song");
    });

    $("#audioPlayer")[0].addEventListener("ended", function() {
        currentSong++;
        if (currentSong == $("#playlist li a").length) {
            currentSong = 0;
        }
        $("#playlist li").removeClass("current-song");
        $("#playlist li:eq(" + currentSong + ")").addClass("current-song");
        $("#audioPlayer")[0].src = $("#playlist li a")[currentSong].href;
        $("#audioPlayer")[0].play();
    });
}

Кроме того, с помощью css я попытался сделать название песни, которая играет синим, но происходит то, что все названия песен, которые я нажимаю, становятся синими, а не только играющая.

#audioPlayer {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

#playlist li a {
  color: white;
  text-decoration: none;
}

#playlist .current-song a {
  color: #0b80f7;
}

Я был бы очень признателен, если бы кто-нибудь мог мне помочь.

Я просто решил это, спасибо всем.

попробуйте добавить это в javascript-функцию audioPlayer () {var currentSong = 0; и в аудио теге html попробуйте добавить этот preload = "none"

godfather 15.12.2018 21:31

@godfather Мой файл не сохранился или я не писал его здесь, но я уже добавил var currentSong = 0: P извините, я отредактирую его. Я попробовал то, что вы сказали, но это не решило проблему: c

Pedro Souto 16.12.2018 00:55

Кажется, есть синтаксическая ошибка, когда вы написали lenght вместо length в операторе if.

Kevin Pastor 16.12.2018 01:01

@KevinPastor Ups, вы правы, редактируете. Но и это не решило проблему: /

Pedro Souto 16.12.2018 01:04
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
4
1 693
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Так что в основном было неправильным то, что я использовал элемент «a» внутри диапазона следующим образом:

<li class = "current-song"> <span><a href = "../music/lights.mp3"> Lights Down Low</a></span><span>3:43</span></li>

Когда вместо этого я должен делать следующее:

<li class = "current-song"> <a href = "../music/lights.mp3"> Lights Down Low</a><span>3:43</span></li>

Так что на основе моего сценария это может сработать ... Иногда я действительно дурак. Спасибо всем, кто комментировал!

Другие вопросы по теме