我正在创建一个客户端SoundCloud应用程序,我希望能够在上一个小部件点击.FINISH事件(在他们的api https://developers.soundcloud.com/docs/api/html5-widget#methods中引用)之后播放下一个SC小部件(iframe对象)。当页面处于焦点时,它可以正常工作并播放下一首曲目;但是,当我播放一首歌并转到另一个标签时,在我再次关注该标签之前,下一首歌曲才会开始播放。我现在正在使用Chrome,并且没有尝试任何其他网络浏览器。
有什么想法吗?
答案 0 :(得分:1)
我在SC.Widget.Events.READY上测试了play(),而页面处于非活动选项卡中。当事件READY被触发时,我更改了页面标题,它起作用了。戏剧()也做了,但它的效果是"暂停"直到该非活动标签再次变为活动状态我用play(),setIntervals和正在进行的歌曲进行了更广泛的测试。当歌曲正在进行时,它在非活动标签上正常触发但在非活动标签时从未在READY事件上触发。抱歉,我无法帮助您解决问题,我还没有找到解决方案,希望这会引导您完成一个解决方案。
var widgetIframe = document.getElementById("YourPlayer"),
widget = SC.Widget(widgetIframe);
widget.bind(SC.Widget.Events.READY, function() {
document.title = "test";
// widget.play();
});
编辑:我使用YouTube API在使用自动播放的soundcloud iframe之后排队了一个YouTube iframe。它的行为完全相同,只有当标签处于活动状态时才会开始播放。我挖的越多,我相信它与iframe和/或浏览器的工作方式有关。