当我单击触发它显示的链接时,如何触发 Spotify 播放按钮播放?

Posted

技术标签:

【中文标题】当我单击触发它显示的链接时,如何触发 Spotify 播放按钮播放?【英文标题】:How can I trigger the Spotify Play button to play when I click a link that triggers it to display? 【发布时间】:2012-11-28 12:18:33 【问题描述】:

这是当我单击“摇滚!”链接时显示 Spotify 播放按钮的 jQuery 代码

$(function() 
$('#partystart').toggle(function () 
    $(".fadeIn").addClass("party");
    $("#musicbox").slideDown("300");
    $("#partystart").html("<a id='partystart'>Take a break</a>");
, function () 
    $(".fadeIn").removeClass("party");
    $(".fadeIn").addClass("fullopacity");
    $("#musicbox").slideUp("300");
    $("#partystart").html("<a id='partystart'>&#9650; Rock the house!</a>");
);
);

这里是 HTML:

<div id="partybox" >
    <iframe id="musicbox" style="margin-top: -2px; display: none;" src="https://embed.spotify.com/?uri=spotify:track:3QMLpta0AmeJLpWNmeyC6B#0:12"   frameborder="0" allowtransparency="true"></iframe>
    <a id="partystart">&#9650; Rock the house!</a>
</div>

这是一个示例,允许您单击一个圆圈来播放曲目,而不是实际 Spotify 播放按钮内的播放按钮:http://spotifymusic.tumblr.com/

另外,我将#0:12 放在歌曲的 URI 末尾,让它在 0:12 秒开始播放,但它似乎不起作用。我在那里做错了什么?

谢谢!

【问题讨论】:

对了,我添加了href来触发track,如下:▲摇滚房子! 问题是它只有在我没有涉及 jquery 时才会触发曲目播放 【参考方案1】:

我没有 Spotify 帐户,也不打算创建一个,但以下解决方案应该可以工作,您只需要进行一些调查。

Spotify iFrame 有一个附加到 .play-pause-btn 的点击事件(我认为)。您需要激活单击事件才能开始播放。应该是这样的:

$("#musicbox").contents().find("div.play-pause-btn").click();

将其与其余代码一起添加:

$('#partystart').toggle(function () 
    $(".fadeIn").addClass("party");
    $("#musicbox").slideDown("300");
    $("#partystart").html("<a id='partystart'>Take a break</a>");
    $("#musicbox").contents().find("div.play-pause-btn").click();
, function () 
    $(".fadeIn").removeClass("party");
    $(".fadeIn").addClass("fullopacity");
    $("#musicbox").slideUp("300");
    $("#partystart").html("<a id='partystart'>&#9650; Rock the house!</a>");
);
);

如果不起作用,您需要确定哪个项目上有点击事件。

【讨论】:

以上是关于当我单击触发它显示的链接时,如何触发 Spotify 播放按钮播放?的主要内容,如果未能解决你的问题,请参考以下文章

单击触发 JavaScript 的链接时,如何阻止网页滚动到顶部?

在前台单击推送通知横幅后如何触发操作

如何在单击链接时触发另存为弹出窗口?具体来说,我如何触发 MIME 类型的变化?

Vue转换未在按钮单击时触发

wpf点击checkbox触发了两次

在单击 Google Map API V3 时使用 infoWindow 或 InfoBox 触发事件