我对JS很新,我在播放暂停或停止使用SoundCloud JavaScript SDK的音频时遇到问题。我正在使用MEAN堆栈。
准备好'功能我初始化SC播放器:
SC.initialize({
client_id: "my_client_ID",
redirect_uri: "http://example.com/callback.html",
});
...
$('#trackList table tbody').on('click', 'td a.linkplaytrack', playTrack);
$('#trackList table tbody').on('click', 'td a.linkpausetrack', pauseTrack);
playTrack功能正常,音频开始播放:
function playTrack(event){
event.preventDefault();
SC.stream("/tracks/293", function(sound){
sound.play();
});
};
但由于某种原因,pauseTrack功能不起作用:
function pauseTrack(event){
event.preventDefault();
SC.stream("/tracks/293", function(sound){
sound.pause();
});
};
任何帮助,见解或建议都将不胜感激!
答案 0 :(得分:0)
每次调用SC.stream时,都会创建一个新的声音对象。 pause()正在工作,只是与播放的声音不同。您可以存储稍后要使用的流:
var stream;
function playTrack(event) {
e.preventDefault();
if(!stream) {
SC.stream("/tracks/293", function(sound){
stream = sound;
stream.play();
});
}
else {
stream.play();
}
}
function pauseTrack(event) {
if(stream) {
stream.pause();
}
}