Ссылка по-прежнему открывает новое окно с функцией protectDefault () - PullRequest
0 голосов
/ 22 мая 2019

Я использую этот простой аудиоплеер для музыкального сайта. Локально работает, но не на веб-сайте

Установленная на сайте программа по-прежнему открывает новое окно, когда я нажимаю другую песню. Я только немного знаком с JS и JQuery и пытался изменить e. к событию. но это не сработало. Однако JS находится в тегах сценария в теле и не связан отдельно. Где я могу поместить функцию console.log (), чтобы проверить, работает ли функция protectDefault ()?

Заранее благодарю за любую помощь.

Вот скрипт, который я использую для аудиоплеера

<script src="https://code.jquery.com/jquery-2.2.0.js"></script>
<script type="text/javascript>
 function audioPlayer(){
        var currentSong = 0;
        $("#audioPlayer-lk")[0].src = $("#playlist-lk li a")[0];
        $("#audioPlayer-lk")[0].play();
        $("#playlist-lk li a").click(function(e){
           e.preventDefault(); 
           $("#audioPlayer-lk")[0].src = this;
           $("#audioPlayer-lk")[0].play();
           $("#playlist-lk li").removeClass("current-song-lk");
            currentSong = $(this).parent().index();
            $(this).parent().addClass("current-song-lk");
        });

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

  audioPlayer(); </script>

1 Ответ

0 голосов
/ 22 мая 2019

Вам нужно обернуть функцию audioPlayer () функцией $ (document) .ready (), как показано ниже:

$(document).ready(function(){

audioPlayer();

})
...