我在页面上有几个HTML5音频元素,并使用jQuery来播放和暂停它们。播放和暂停功能可以正常工作,但曲目可以同时播放。通过jQuery一次播放和暂停一个HTML5音频元素
如何重写此代码,以便一次只能播放一首歌曲?也就是说,如果某人正在玩并且您点击另一个人,请暂停前一个并播放最近的点击。
谢谢!
HTML:
<div id="music_right">
<div class="thumbnail" id="paparazzi">
<a class="playback">
<img class="play" src="http://www.lucisz.com/imgs/play.png" />
</a>
<audio>
<source src="../audio/fernando_garibay_paparazzisnlmix.ogg" type="audio/ogg" />
<source src="../audio/fernando_garibay_paparazzisnlmix.mp3" type="audio/mpeg" />
Your browser does not support HTML5 audio.
</audio>
</div>
<div class="thumbnail" id="danceinthedark">
<a class="playback">
<img class="play" src="http://www.lucisz.com/imgs/play.png" />
</a>
<audio>
<source src="../audio/fernando_garibay_danceinthedark.ogg" type="audio/ogg" />
<source src="../audio/fernando_garibay_danceinthedark.mp3" type="audio/mpeg" />
Your browser does not support HTML5 audio.
</audio>
</div>
<div class="thumbnail" id="bornthisway">
<a class="playback">
<img class="play" src="http://www.lucisz.com/imgs/play.png" />
</a>
<audio>
<source src="../audio/fernando_garibay_bornthisway.ogg" type="audio/ogg" />
<source src="../audio/fernando_garibay_bornthisway.mp3" type="audio/mpeg" />
Your browser does not support HTML5 audio.
</audio>
</div>
</div>
的JavaScript:(这样的作品,但扮演/单独暂停)
$(function() {
$(".playback").click(function(e) {
e.preventDefault();
var song = $(this).next('audio').get(0);
if (song.paused)
song.play();
else
song.pause();
});
});
JavaScript的:(我的丑概念)
$(function() {
$(".playback").click(function(e) {
e.preventDefault();
var song = $(this).next('audio').get(0);
if (song.paused)
song.play();
song.not($(this).pause();
else
song.pause();
});
});
你有什么尝试?......没有人会为你写。那么,大多数人,就是这样。 – mattsven 2011-04-19 19:52:18
@NeXXeuS。我听到你。用严格的语法试了几个不同的东西。如果/然后陈述对我来说很难包围我的头。我会将我的概念加入 – technopeasant 2011-04-19 20:00:21