Spotify iframe 打开一个新页面或打开应用程序而不是在同一站点中播放

Posted

技术标签:

【中文标题】Spotify iframe 打开一个新页面或打开应用程序而不是在同一站点中播放【英文标题】:Spotify Iframe open a new page or open the app instead of play in the same site 【发布时间】:2016-03-13 18:48:58 【问题描述】:

我在网站上有这段代码

<iframe src="https://embed.spotify.com/?uri=spotify%3Auser%3Ametcastle%3Aplaylist%3A5I28Zby77hlyq61uqfgnZq"   frameborder="0" allowtransparency="true"></iframe>

但是当你播放列表时,打开一个新页面 (https://play.spotify.com/) 或者如果你有应用,在应用中播放歌曲。

我想要的是在同一页面中听到音乐,我不想打开新页面或应用程序!

那是嵌入小部件的目标吗?

我希望你能帮助我。

【问题讨论】:

【参考方案1】:

这实际上是 spotify 的widget specifications 的一部分,这就是 API 的工作原理:

当登录的 Spotify 用户点击该按钮时,音乐将开始在 Spotify 播放器中播放。如果用户没有登录他们的 Spotify 帐户,他们将被提示这样做。如果用户没有 Spotify 播放器,他们将被发送到 Spotify 注册页面或在新窗口中提示下载合适的客户端。

【讨论】:

您可以像其他答案所暗示的那样寻找解决方法【参考方案2】:

为 IFRAME 提供一个 ID,

&lt;iframe src="https://embed.spotify.com/?uri=spotify%3Auser%3Ametcastle%3Aplaylist%3A5I28Zby77hlyq61uqfgnZq" width="300" height="380" frameborder="0" allowtransparency="true" id="theFrame"&gt;&lt;/iframe&gt;

使用 jQuery 并定位 IFRAME 中的 play 元素(html 组件),它主要应该是一个锚标记 &lt;a&gt; ,将该元素的 target 属性设置为 _self 或 '_parent' 最好的位置适合你。

类似的,

$('document #theFrame #thePlayAnchorTag').attr('target', '_self');

或者,

$('document #theFrame #thePlayAnchorTag').attr('target', '_parent');

您必须找出播放按钮的类或 id 或其他可以帮助您在 jQuery 中获取播放按钮的元素。尝试执行 F12,即转到浏览器上的开发工具并检查播放按钮。

【讨论】:

嗨,谢谢你的意思是这样吗? &lt;iframe src="xxxxx" id="theFrame"&gt; &lt;a href="" target="_self" id="thePlayAnchorTag"&gt;Play&lt;/a&gt; &lt;/iframe&gt; 无效 :( @user3810795 你对 iframe 部分是正确的。我还补充说,您必须在该 iframe 中找到播放按钮元素。这将是一个 &lt;a&gt; 标签(可能),并且通过 jQuery,您必须将 target 属性设置为 _self_parent。我会更新我的答案。 不起作用,我试过了,但里面只存在没有链接的 div 谢谢

以上是关于Spotify iframe 打开一个新页面或打开应用程序而不是在同一站点中播放的主要内容,如果未能解决你的问题,请参考以下文章

如何根据登录成功在新窗口/选项卡或同一窗口/选项卡中打开页面?

如何使iframe中的链接都在新窗口打开?

iframe中点击子框架里面的超链接怎么怎么在新网页中打开想要打开的页面?

标签页是iframe的,在此页面跳转其他页面问题

在新窗口/标签中打开 Google Docs iframe 链接在 Internet Explorer 中不起作用

如果通过点击JS,让新页面在父窗口打开.