jQuery仅使用log()运行



嗨,我有一个小的jQuery脚本,该脚本从按钮中获取数据,将其用作容器的ID并切换容器的类。该脚本工作正常,但前提是我有" log(audiOdif)";启用。如果删除此部分,则脚本不起作用。知道我做错了什么?

谢谢

jQuery (document).ready(function($){
        var playing = false;
        var btns = $('[data-music]');
        $(btns).each(function() {
        $('[data-music]').on('click', function(e) {
        var FFplayer = $(this).data('music');
        $("#" + FFplayer).toggleClass("audio-hidden audio-shown");
            var audioId = $("#" + FFplayer).find('audio').attr('id');
            if (playing == false) {
                $("#" + audioId)[0].play();
                playing = true;
            } else {
                $("#" + audioId)[0].pause();
                playing = false;
                }
            log(audioId);                       
    });
});
})

您是否需要在btns中选择所有[data-music]项目并通过它们循环?我认为这会在不执行$(btns).each的情况下给您相同的行为吗?内部功能this内部应参考每个[data-music]元素。

jQuery (document).ready(function($){
    var playing = false;
    $('[data-music]').on('click', function(e) {
            var FFplayer = $(this).data('music');
            $("#" + FFplayer).toggleClass("audio-hidden audio-shown");
            var audioId = $("#" + FFplayer).find('audio').attr('id');
            if (playing == false) {
                $("#" + audioId)[0].play();
                playing = true;
            } else {
                $("#" + audioId)[0].pause();
                playing = false;
            }
    });
});

最新更新