为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript 不会阻止音频播放器的默认功能

JavaScript 不会阻止音频播放器的默认功能

泛舟湖上清波郎朗 2022-01-07 19:21:21
所以我一直在关注这个视频,对于我的生活,我无法弄清楚为什么我的代码会使用我的音频文件执行默认的新页面,而不是阻止默认设置。一旦我弄清楚了那部分,当我的歌曲结束时,我应该能够在我的代码底部测试事件监听器。JavaScriptaudioPlayer();function audioPlayer() {    var currentSong = 0;    $("#audioPlayer")[0].src = $("#playlist li a")[0];    $("#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(){        alert("hi");        });}HTML<section>        <script>            audioPlayer();        </script>        <audio src="" id="audioPlayer" controls>            Sorry, your browser does not support HTML5 audio player!        </audio>        <ul id="playlist">            <li class="current-song"><a href="All_American_Reject_Move_Along.mp3">Move Along</a></li>            <li><a href="Far_From_Home.m4a">Far From Home</a></li>        </ul>    </section>
查看完整描述

1 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

确保在页面加载后执行 $("#playlist li a").click()。


    function initAudioPlayer() {

        var currentSong = 0;

        $("#audioPlayer")[0].src = $("#playlist li a")[0];

        $("#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(){

            alert("hi");    

        });

    }


$(document).ready(function() {

   initAudioPlayer();

})


查看完整回答
反对 回复 2022-01-07
  • 1 回答
  • 0 关注
  • 211 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号