Jquery 在HTML5中一次播放一首歌曲

Jquery 在HTML5中一次播放一首歌曲,jquery,html,audio,html5-audio,Jquery,Html,Audio,Html5 Audio,我正在制作一个包含许多音频元素的html5网站,我希望它们一次播放一个,为了做到这一点,我使用jQuery暂停并播放歌曲 我在这里找到了一个允许我这么做的代码,但是线程已经死了2年了 当我播放一首歌时,问题来了,我们称之为歌曲1,然后暂停,然后再次尝试播放歌曲1,歌曲1不会开始复制,为了再次播放歌曲1,我必须复制任何其他歌曲,然后再次单击歌曲1,这样它才能开始播放。我不知道如何解决这个问题。如果不这样做,我怎么能玩呢 非常感谢 HTML: 试试这个: var curPlaying; $(func

我正在制作一个包含许多音频元素的html5网站,我希望它们一次播放一个,为了做到这一点,我使用jQuery暂停并播放歌曲

我在这里找到了一个允许我这么做的代码,但是线程已经死了2年了

当我播放一首歌时,问题来了,我们称之为歌曲1,然后暂停,然后再次尝试播放歌曲1,歌曲1不会开始复制,为了再次播放歌曲1,我必须复制任何其他歌曲,然后再次单击歌曲1,这样它才能开始播放。我不知道如何解决这个问题。如果不这样做,我怎么能玩呢

非常感谢

HTML:

试试这个:

var curPlaying;
$(function () {
    $(".playback").click(function (e) {
       e.preventDefault();
       var song = $(this).next('audio')[0];
       if (song.paused) {
           if (curPlaying) {
               $("audio", "#" + curPlaying)[0].pause();
           }
           song.play();
           curPlaying = $(this).parent()[0].id;
       } else {
           song.pause();
           curPlaying = null;
       }
    });
});
问题在于这种流动:

1) 播放歌曲1(curPlaying==歌曲1)

2) 暂停歌曲1(curPlaying仍设置为歌曲1)

3) 播放歌曲1(因为播放仍然是真实的,所以歌曲1会立即暂停)

不管怎么说,现在已经很晚了,我已经精疲力竭了,所以我的代码可能无法正常工作(oops)。但希望剩下的答案能让你走上正轨。

试试这个:

var curPlaying;
$(function () {
    $(".playback").click(function (e) {
       e.preventDefault();
       var song = $(this).next('audio')[0];
       if (song.paused) {
           if (curPlaying) {
               $("audio", "#" + curPlaying)[0].pause();
           }
           song.play();
           curPlaying = $(this).parent()[0].id;
       } else {
           song.pause();
           curPlaying = null;
       }
    });
});
问题在于这种流动:

1) 播放歌曲1(curPlaying==歌曲1)

2) 暂停歌曲1(curPlaying仍设置为歌曲1)

3) 播放歌曲1(因为播放仍然是真实的,所以歌曲1会立即暂停)


不管怎么说,现在已经很晚了,我已经精疲力竭了,所以我的代码可能无法正常工作(oops)。但希望剩下的答案能让你走上正轨。

很有魅力!非常感谢。工作起来很有魅力!非常感谢。
var curPlaying;
$(function () {
    $(".playback").click(function (e) {
       e.preventDefault();
       var song = $(this).next('audio')[0];
       if (song.paused) {
           if (curPlaying) {
               $("audio", "#" + curPlaying)[0].pause();
           }
           song.play();
           curPlaying = $(this).parent()[0].id;
       } else {
           song.pause();
           curPlaying = null;
       }
    });
});