如何向Soundcloud API添加播放暂停按钮?

时间:2015-06-27 08:48:17

标签: jquery soundcloud

我目前正在使用Soundcloud应用程序,但我现在卡住了。我使用的是 HTTP API 而不是Widget。我在我的网站上导入了每个专辑的曲目列表,并带有播放/暂停按钮。我想要的是每个轨道的每个播放/暂停按钮都可以控制。

现在,在Codeacademy上,他们将使用:

SC.stream('/tracks/108816655', function(sound) {
            $('#start').click(function(e) {
                e.preventDefault();
                sound.start();
            });
            $('#stop').click(function(e) {
                e.preventDefault();
                sound.stop();
            });
        });

这很好,但它并不符合我的意愿。因为如何才能实现当前的trackID才能播放特定的歌曲?

我是这样来的。它几乎符合我的意愿。它现在播放特定的歌曲,当你播放另一首歌时,它将播放该歌曲。 只有我缺少的是我可以暂停那首特定曲目的歌曲。所有这些我想用一个按钮来切换那个类。但我不知道这是否是实现这一目标的正确方法。

$('.play').click(function(event) {
                event.preventDefault();

                var trackID = $(this).closest('li').attr('data-id'); // Even kijken hoe je de li kunt krijgen omdat je nested nested hebt omdat ik nu gebruik maak van td dus de parent is geen li maar td
                console.log(trackID);

                $('#playlist li').removeClass('active');
                $(this).parent().addClass('active'); 
                $(this).toggleClass('play pause');

                if (nowPlaying) {
                    nowPlaying.stop();
                }

                SC.stream('/tracks/' + trackID, function(sound) {
                    sound.play();
                    nowPlaying = sound;
                });

            }); 

我尝试制作一个JSFiddle,但我无法获得完成Soundcloud API的链接。非常遗憾。 Here is the jsfiddle

在我的代码之前,我使用了soundcloud SC.initialize函数,我在其中定义了client_idredirect_uri

1 个答案:

答案 0 :(得分:0)

请深入了解SoundManager2方法。 http://www.schillmania.com/projects/soundmanager2/

这里我有一个演示停止/开始/暂停的工作示例:

GET /oauth/access_token?  
    grant_type=fb_exchange_token&           
    client_id={app-id}&
    client_secret={app-secret}&
    fb_exchange_token={short-lived-token} 

http://codepen.io/bnz/pen/Qbadwg

相关问题