Javascript jplayer多个实例一页-但是数量是可变的

Javascript jplayer多个实例一页-但是数量是可变的,javascript,jquery,html,audio,jplayer,Javascript,Jquery,Html,Audio,Jplayer,我目前正在与jPlayer合作,为用户提供一些音频播放,如果他们希望听到音频样本,有一点复杂,用户首先创建一个搜索,可以在结果页面上返回可变数量的音频文件 我已经看过了jPlayer的文档,看起来您需要为您希望播放的每个音频文件创建一个jPlayer实例,它们的示例都是硬编码的,如果您知道每次搜索示例时都会得到相同数量的结果,那就太好了。但是对我来说,1次搜索可以返回1个剪辑,而另一次搜索可以返回60个剪辑 我曾尝试实现多个jplayer实例,但都没有效果,因为我没有得到音频输出 $('.jp-

我目前正在与jPlayer合作,为用户提供一些音频播放,如果他们希望听到音频样本,有一点复杂,用户首先创建一个搜索,可以在结果页面上返回可变数量的音频文件

我已经看过了jPlayer的文档,看起来您需要为您希望播放的每个音频文件创建一个jPlayer实例,它们的示例都是硬编码的,如果您知道每次搜索示例时都会得到相同数量的结果,那就太好了。但是对我来说,1次搜索可以返回1个剪辑,而另一次搜索可以返回60个剪辑

我曾尝试实现多个jplayer实例,但都没有效果,因为我没有得到音频输出

$('.jp-audio').each(function(index) {
        var count = index+1;
        $(this).attr("id", "jp_container_"+count)
        $(".jp-stop").hide();
        $("#jquery_jplayer_"+index+1).jPlayer({
                ready: function () {
                    $(this).jPlayer("setMedia", {
                        mp3:$(this).find('a.jp-play').attr('rel'),
                        wav:$(this).find('a.jp-play').attr('rel')
                    });
                },
                play: function() { // To avoid both jPlayers playing together.
                    $(this).jPlayer("pauseOthers");
                },
                swfPath: "/media/js/jPlayer",
                solution: "flash, html",
                supplied: "mp3, wav",
                wmode: "window",
                preload: "auto"
            });
        $('body').append("<div id='jquery_jplayer_"+count+"' class='jp-jplayer'></div>");
    });
摘自


在您的情况下,您只需要一个jPlayer实例。如果您的搜索结果HTML如下所示:

<ul> 
    <li data-m4a-path="http://www.example.com/track.m4a">Artist - Track</li>
    < ... >
</ul>
使用以下命令: 我在我的投资组合网站上有这个,我一直在努力,到现在为止,它一直运作得很好 我需要在配乐组合中大量使用这个


希望有帮助

是的,我们重新建模了页面,因此不需要多个实例。
<ul> 
    <li data-m4a-path="http://www.example.com/track.m4a">Artist - Track</li>
    < ... >
</ul>
$("li[data-m4a-path]").click(function () {
   $("#jquery_jplayer_1").jPlayer("setMedia", {m4a: $(this).attr("data-m4a-path")}); 
});