Soundcloud:同时播放多个曲目 - HTML5小部件

时间:2012-09-13 16:44:35

标签: html5 widget soundcloud

我正在尝试创建一个基于Soundcloud的简单多轨播放器,显示多个曲目并同时开始播放。
我在这里找到了一个类似的原型(基于Flash小部件):http://sessian.com/10/
按两个不同的“播放”按钮,两个轨道可以一起播放。

似乎使用HTML5小部件代替这是不可能的,一次只能播放一首曲目。 这里的简单示例:http://jsfiddle.net/ftwJr/7/

HTML:

<iframe id="widget" src='http://w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/43315398&auto_play=true' width="100%"></iframe>
<iframe id="widget2" width="100%" src='http://w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/4331538'></iframe>    

JavaScript的:

(function() {
    var iframe = document.querySelector('#widget');
    var widget = SC.Widget(iframe);
    widget.bind(SC.Widget.Events.PLAY, function(eventData) {
        alert('Playing 1...');
    });
    widget.bind(SC.Widget.Events.PAUSE, function(eventData) {
        alert('PAUSE 1...');
    });

    var iframe2 = document.querySelector('#widget2');
    var widget2 = SC.Widget(iframe2);
    widget2.bind(SC.Widget.Events.PLAY, function(eventData) {
        alert('Playing 2...');
    });
    widget2.bind(SC.Widget.Events.PAUSE, function(eventData) {
        alert('PAUSE 2...');
    });
}());


按“播放”会将暂停事件传递给另一个窗口。在不同的浏览器选项卡中也是如此。

有没有办法允许使用HTML5小部件多个同时播放? (现有的SC init选项,或者有两种不同SC实例的方法,或者......)

谢谢!

1 个答案:

答案 0 :(得分:3)

澄清一下:API for the flash and HTML5 widgets正好支持single_active参数。