Soundcloud Widget没有在Safari中发射FINISH事件

时间:2014-11-02 17:12:05

标签: safari coffeescript widget soundcloud

我正在使用SoundCloud的javascript库为我网站上的嵌入式播放器设置一些外部控件。播放/暂停和跳过按钮适用于我测试过的所有浏览器(让移动设备留给另一个问题)。我还连接了一个FINISH监听器,以自动跳过播放器到新的轨道。这适用于Chrome和Firefox,但似乎事件永远不会在Safari上触发。我将尝试提取代码的相关部分,并省略我认为多余的内容。请随时要求澄清或更多细节。

谢谢!

<div id=playlist-player">
  <iframe id="sc-ilovemakonnen-tuesday-feat-drake" class="player-iframe" width="100%" height="120" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/162777996&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;visual=true"></iframe>
</div>

initializeSoundCloudPlayer: (post) ->
    playerIframe = document.getElementById("sc-"+post.slug)
    @player = SC.Widget(playerIframe)
    @player.bind(SC.Widget.Events.READY, () =>
      @player.unbind(SC.Widget.Events.FINISH)
      @player.bind(SC.Widget.Events.FINISH, () =>
        @skip("forward", true)
      )
    )

因此,我认为,带回家的消息是@skip()方法永远不会在safari上运行,因此我认为永远不会触发FINISH事件。

我已经读过其他地方,当嵌入代码中的autoplay选项为true时,某些事件没有被触发存在问题,但我有这个问题,无论是否有自动播放都是真的。

0 个答案:

没有答案