SoundCloud 小部件事件未触发
Posted
技术标签:
【中文标题】SoundCloud 小部件事件未触发【英文标题】:SoundCloud widget events not firing 【发布时间】:2013-01-10 13:28:32 【问题描述】:我在使用 SoundCloud Widget API 时遇到问题。
由于某种原因,在使用 auto_play 选项播放曲目后,PLAY 和 PLAY_PROGRESS 事件未触发。不过,READY 事件运行良好。
代码如下:
player = SC.Widget(document.getElementById('soundcloud-player'));
player.bind(SC.Widget.Events.READY, this.SC_onPlayerReady.bind(this));
player.bind(SC.Widget.Events.PLAY, this.SC_onPlayerPlay.bind(this));
player.bind(SC.Widget.Events.PLAY_PROGRESS, this.SC_onPlayProgress.bind(this));
感谢 SC 工作人员的帮助,因为我找不到任何解决方案:-)
谢谢, 皮埃尔
【问题讨论】:
嘿皮埃尔!任何特定的浏览器?有链接吗? 嗨,米莎,我正在使用 Chrome (v23)。 Safari 也会出现同样的问题(不足为奇)。至于 Firefox,小部件根本没有加载。不,抱歉,我没有链接,因为它仍在进行中。 :-/ 不过,游乐场工作得很好。 【参考方案1】:感谢您报告此事。
确实,当auto_play
参数设置为true
时,SC.Widget.Events.Play
不会立即触发。该修复程序正在部署中。
但是,PLAY_PROGRESS
事件很好,如下例所示:http://jsbin.com/adubav/6/edit
【讨论】:
不用担心。您的示例也对我有用,即使是 PLAY 事件,如果我以编程方式播放它。在我的本地版本中,当我执行完全相同的操作时甚至不会触发 PLAY,PLAY_PROGRESS 也不会触发。找不到我们的代码之间的任何区别。 如果我将 PLAY 和 PLAY_PROGRESS 事件的绑定移动到 READY 事件的回调函数中,我会收到无法使用跨域 postMessage 的错误消息。 如果你能上传你拥有的代码会很有帮助,我很乐意看看。 这包含我正在处理的代码的相关部分(不能透露全部内容):jsbin.com/adubav/12/edit。这个例子对我来说很好 小部件还有问题吗?以上是关于SoundCloud 小部件事件未触发的主要内容,如果未能解决你的问题,请参考以下文章
soundcloud 小部件:自动播放在 Firefox 16 中无法始终如一地工作