Soundcloud iframe 和 YouTube iframe 一起出现的问题
Posted
技术标签:
【中文标题】Soundcloud iframe 和 YouTube iframe 一起出现的问题【英文标题】:Issues with Soundcloud iframe and YouTube iframe together 【发布时间】:2014-02-16 21:18:33 【问题描述】:Soundcloud 小部件可以连续播放多个曲目。如果我随后隐藏该帧,在 youtube iframe 中播放 youtube 视频,然后切换回 Soundcloud 小部件中的新曲目,它会加载但不会播放(忽略自动播放设置和任何 widget.play() 调用)。我使用开发人员预览 SDK 和 1.0 cast 接收器在 Chromecast 上工作,但现在使用 2.0.0 接收器它坏了。任何想法如何进行?
【问题讨论】:
好的,让它工作了,所以希望这对其他人有用。假设一次只有一个处于活动状态且可见,诀窍是销毁先前的小部件而不是尝试重用它们。对于 YouTube,这并不意味着重新加载 iframe_api,而只是在下次调用 YTPlayer.destroy() 和 new YT.Player()。对于 SoundCloud,保留 iframe 的句柄,然后调用 iframe.parentNode.removeChild(iframe) 销毁,然后下次再创建。 【参考方案1】:目前,SDK 中不支持在 YouTube 应用之外播放 YouTube 视频的机制。请注意,一般情况下,应用程序可能不允许其他发送方启动或控制其接收方,例如,如果您想编写自己的应用程序以在 Chromecast 上启动和控制该应用程序,Hulu+ 可能不喜欢它;如果他们决定允许这样的模型,他们需要发布这些步骤(例如,他们可以发布他们的 App ID 和其他可以链接到他们的应用程序的自定义数据)。 YouTube 在这方面也不例外。
【讨论】:
阿里,您完全可以在 YouTube 应用程序之外播放 YouTube 视频,并且完全支持。我的帖子的重点不是那个,而是导致问题的 YouTube 和 Soundcloud 之间的微妙交互。 当你说“完全支持”时,你的意思是官方SDK中有Cast APIs来支持吗?如果不是,则不支持;如果是,它们是哪些,因为我不知道它们。换句话说,您是否使用任何官方 Cast SDK api 来启动 YouTube 并播放/控制任何特定视频? 它是受支持的,因为您可以免费使用 YouTube v3 iframe api 并且它可以工作。它不是 Chromecast 接收器 API 的一部分,但它不需要。【参考方案2】:好的,让它工作了,所以希望这对其他人有用。假设一次只有一个处于活动状态且可见,诀窍是销毁先前的小部件而不是尝试重用它们。对于 YouTube,这并不意味着重新加载 iframe_api,而只是在下次调用 YTPlayer.destroy() 和 new YT.Player()。对于 SoundCloud,保留 iframe 的句柄,然后调用 iframe.parentNode.removeChild(iframe) 销毁,然后下次再次创建。
【讨论】:
以上是关于Soundcloud iframe 和 YouTube iframe 一起出现的问题的主要内容,如果未能解决你的问题,请参考以下文章
scss iFrame嵌入包装器(不是soundcloud)
如何像 soundcloud 那样在新闻源中嵌入内联 iframe?
soundcloud 小部件:自动播放在 Firefox 16 中无法始终如一地工作