如果有人曾经使用jplayer,我需要帮助解决这个问题。如何实现多实例jplayers
我有多个jplayers,每个播放器都假设播放自己的音频文件。但它并不是这样做的,如果我玩jplayer,那么所有jplayers都会玩,都会从选定的jplayers播放一个音频文件。事实上,如果我在一个jplayer中使用控件,它也会控制所有其他jplayers。
所以我想实现多实例jplayers其信息来源于此:
http://www.jplayer.org/latest/demo-03/
但我真的能够努力实现这个,所以我的问题是有人可以帮我玩完了为了让玩家能够像它应该做的那样工作,jplayer只控制自己的玩家而不影响其他玩家?
下面是javascript代码我目前所面对的这个(查看源代码):
<script type="text/javascript">
$(document).ready(function(){
$("#jquery_jplayer_1-72-0").jPlayer({
ready: function() {
$(this).jPlayer("setMedia", {
mp3: "AudioFiles/Kalimba.mp3"
});
},
play: function() { // To avoid both jPlayers playing together.
$(this).jPlayer("pauseOthers");
},
solution:"flash,html",
swfPath: "jquery",
supplied: "mp3"
});
});
</script>
UPDATE:
实际代码:
如果没有音频文件,显示每个音频文件的其他空白,显示音频播放器。我包含在HTML控件以及,如果需要的话不知道,但贴吧,以防万一
//start:procedure audio
$aud_result = '';
if(empty($arrAudioFile[$key])){
$aud_result = ' ';
}else{
$j = 0;
foreach ($arrAudioFile[$key] as $a) {
$info = pathinfo('AudioFiles/'.$a);
?>
<script type="text/javascript">
$(document).ready(function(){
$("#jquery_jplayer_1-<?php echo $key.'-'.$j; ?>").jPlayer({
ready: function() {
$(this).jPlayer("setMedia", {
<?php echo $info['extension'];?>: "<?php echo "AudioFiles/".$a; ?>"
});
$(this).bind($.jPlayer.event.play, function() {
$(this).jPlayer("pauseOthers");
});
},
solution:"flash,html",
swfPath: "jquery",
supplied: "<?php echo $info['extension'];?>"
});
});
</script>
<div id="jquery_jplayer_1-<?php echo $key.'-'.$j; ?>" class="jp-jplayer"></div>
<div id="jp_container_1" class="jp-audio">
<div class="jp-type-single">
<div class="jp-gui jp-interface">
<ul class="jp-controls">
<li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li>
<li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li>
<li><a href="javascript:;" class="jp-stop" tabindex="1">stop</a></li>
<li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li>
<li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li>
<li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li>
</ul>
<div class="jp-progress">
<div class="jp-seek-bar">
<div class="jp-play-bar"></div>
</div>
</div>
<div class="jp-volume-bar">
<div class="jp-volume-bar-value"></div>
</div>
<div class="jp-time-holder">
<div class="jp-current-time"></div>
<div class="jp-duration"></div>
<ul class="jp-toggles">
<li><a href="javascript:;" class="jp-repeat" tabindex="1" title="repeat">repeat</a></li>
<li><a href="javascript:;" class="jp-repeat-off" tabindex="1" title="repeat off">repeat off</a></li>
</ul>
</div>
</div>
</div>
</div>
<?php $j++;
}
}
//end:procedure audio
?>
很好的答案,但从技术角度来说,这不能说是动态创建div的技术准确性;相反,它会动态地从HTML中现有的div创建jPlayer实例。当然,动态创建基于模板的div是可能的。 – 2013-02-09 05:28:02
你是对的马特。:)我其实是指jplayer实例。 – AlphaMale 2013-02-09 05:31:54
@AlphaMale我很努力地在我的实际代码中实现这一点,在我的实际代码中它为每个循环使用了一点php,我可以告诉你一个更新显示我的实际代码(正如我显示的视图源代码),你可以帮我一个很大的忙,并在你的回答中包括如何实现我的实际代码?这是一个很大的好处,我问,但真正感谢它,如果你能为我做到这一点 – user2056342 2013-02-09 07:36:35