我正在使用SoundCloud API来播放歌曲,但我遇到了以下(我认为是)的错误。
单击按钮时,流式播放并播放曲目,当我单击其他曲目时,播放将暂停。这基本上是用这段代码完成的:
var playerVar;
SC.initialize({ client_id: 'sorryCantPublishThat' });
$('#play').click(function(){
SC.stream('/tracks/' + trackID ).then(function(player){
player.play();
playerVar = player;
});
});
$('#pause').click(function(){
playerVar.pause();
});
这个工作正常,只要在暂停流后我没有再次点击播放。因为它播放,但我无法阻止流。我必须再次点击播放按钮,然后我可以阻止它。
任何想法,如果我做错了什么或者它是一个错误?除此之外,我怎样才能正常工作?
答案 0 :(得分:0)
我想我发现了如何使这个工作。 我现在在页面加载后立即流式传输所有曲目,而不仅仅是在点击播放按钮时。每个曲目都有自己的变量:
SC.initialize({ client_id: '' });
SC.stream('/tracks/' + track.id ).then(function(player){
player.on('time', function () {
// update
});
soundCloudPlayers[ track.id ] = player;
});
然后,当点击播放按钮时:
$('.play').click(function() {
var player = soundCloudPlayers[ $(this).attr('data-trackid') ];
player.play();
player.on('time', function () {
// update the current playback position indicator
});
});
所以这也是放置事件监听器的地方。