SoundCloud Widget API:如何销毁当前播放音频并重新加载新音频?
SoundCloud Widget 音频卸载方案(无需重建实例)
SoundCloud Widget API 目前没有提供原生的“销毁/卸载音频”方法,但可以通过组合现有API操作实现需求,无需重建Widget实例:
- 停止播放并重置进度:先调用
widget.pause()暂停播放,再用widget.seekTo(0)将音频进度拉回起始位置,确保音频处于完全停止的初始状态。 - 卸载当前音频资源:调用
widget.load('')(传入空字符串),这会让Widget清空当前加载的音频内容,进入无资源状态,相当于完成了“卸载”操作。 - 加载新音频:之后直接调用
widget.load(newTrackUrl)即可加载并播放新的音频资源。
示例代码
// 获取已初始化的Widget实例 const widget = SC.Widget(document.getElementById('sc-widget')); // 执行音频卸载流程 widget.pause(); widget.seekTo(0); widget.load(''); // 加载并播放新音频 widget.load('https://soundcloud.com/your-target-track');
实际测试中,load('') 的用法虽然未在官方文档中明确标注,但能有效触发Widget卸载当前音频资源,完全满足“停止/卸载后重新加载”的需求,且无需销毁重建实例。
内容的提问来源于stack exchange,提问作者Toniq
相关产品推荐
相关产品推荐

