我在我的页面中使用了jplayer,点击了一个链接,我想播放点击的链接。但是每次播放test1.mp3。我该如何解决?代码如下:
如果需要,页面如下:
http://www.dilyurdu.com/audio.htm
function listen(mp3_index){
var mp3_file;
mp3_file="test"+mp3_index+".mp3";
$("#jquery_jplayer_1").jPlayer({
ready: function(event) {
$(this).jPlayer("setMedia", {
mp3: mp3_file,
});
},
swfPath: "http://www.jplayer.org/2.1.0/js",
supplied: "mp3"
});
}
链接如下:
<div id="jquery_jplayer_1" class="jp-jplayer"></div>
<a href="javascript:listen(1);" class="jp-play" >play 1</a><br /><br />
<a href="javascript:listen(2);" class="jp-play" >play 2</a><br /><br />
<a href="javascript:listen(3);" class="jp-play" >play 3</a>
答案 0 :(得分:3)
嘿,你可以做到以下几点。
我在页面加载时实例化播放器:
jQuery("#jquery_jplayer_1").jPlayer({
swfPath: "http://www.jplayer.org/latest/js/Jplayer.swf",
supplied: "mp3",
wmode: "window",
preload:"auto",
autoPlay: true,
errorAlerts:false,
warningAlerts:false
});
然后在听众中,每个项目都是唯一的, 你需要: A)获取曲目名称/网址,我想您应该能够解决这个问题。
B)将曲目传递给setMedia
jQuery("#jquery_jplayer_1").jPlayer("setMedia", {
mp3: "http:xxxx.rackcdn.com/"+track+".MP3"
});
C)播放曲目
jQuery("#jquery_jplayer_1").jPlayer("play");
要获取曲目ID,您需要在可播放的项目上安装听众(可能是一个可播放的课程?)并从该曲目中获取曲目。
答案 1 :(得分:0)
我也在寻找解决方案。 刚刚在jsfiddle中创建了它http://jsfiddle.net/vijayweb/A5LQF/2/
它只播放一首歌。任何帮助都将不胜感激。
我找到了一个相关的解决方案......仍然只播放第一首默认歌曲。 multiple mp3 links in a single page with jplayer
答案 2 :(得分:0)
HTML:
<a class="ChangePath" data-key="1" href="javascript:void(0);">Song1</a>
<a class="ChangePath" data-key="2" href="javascript:void(0);">Song1</a>
<a class="ChangePath" data-key="3" href="javascript:void(0);">Song1</a>
jQuery的:
$(function () {
$('.ChangePath').on('click', function () {
$("#jquery_jplayer_1").jPlayer("destroy");
var link = "test" + $(this).data('key') + ".mp3";
$("#jquery_jplayer_1").jPlayer({
ready: function () {
$(this).jPlayer("setMedia", {
mp3: link
});
},
swfPath: "~/Scripts/jplayer",
supplied: "mp3"
});
player.jPlayer("play", 0);
});
});
如果您使用的是ajax:
$(function () {
$('.ChangePath').on('click', function () {
$.ajax({
$("#jquery_jplayer_1").jPlayer("destroy");
var link = "test" + $(this).data('key') + ".mp3";
$("#jquery_jplayer_1").jPlayer({
ready: function () {
$(this).jPlayer("setMedia", {
mp3: link
});
},
swfPath: "~/Scripts/jplayer",
supplied: "mp3"
});
player.jPlayer("play", 0);
});
});
});
根据您的项目,您可能需要将超链接更改为其他内容,但jQuery可以正常工作。
答案 3 :(得分:-1)
$('.reproducirContenedor').on('click',function(e){// click en el elento a reproduccopm
e.preventDefault();
jQuery("#jquery_jplayer_1").jPlayer({
swfPath: "http://www.jplayer.org/latest/js/Jplayer.swf",
supplied: "mp3",
wmode: "window",
preload:"auto",
autoPlay: true,
errorAlerts:false,
warningAlerts:false
});
var url_destino=$(this).attr('data-demo');// obtengo el url y reproduzo la cancoon
console.log("ddd");
jQuery("#jquery_jplayer_1").jPlayer("setMedia", {
mp3:url_destino
});
jQuery("#jquery_jplayer_1").jPlayer("play");
});