2012-04-23 20 views
1

當SoundCloud HTML5播放器小部件加載了autoplay選項時,play事件在軌道啓動時不會觸發。 但是,在加載小部件(或將其他URL加載到小部件中)和軌道開始時間之間存在超時,所以它是調用事件的好小部件。播放事件不會在HTML5小部件上啓動時觸發

這是設計還是問題需要解決?

+0

你的問題都很清楚。你在說什麼小工具?你能提供一個代碼示例來幫助我們理解你的問題嗎?那裏有 – 2012-04-23 21:13:43

+0

。 對不起,我強硬的標籤清楚。 – cucko 2012-04-24 11:06:50

回答

2

當使用auto_play選項時,HTML5播放器窗口小部件應該觸發SC.Widget.Events.PLAY事件。下面是我用來驗證代碼片段:

HTML:

<!doctype html> 
<html> 
    <head> 
    <title>Widget Demo</title> 
    <style type="text/css"> 
    iframe { 
     display:block; 
     border:0; 
     margin-bottom: 20px; 
     height: 365px; 
    } 
    </style> 
    </head> 
    <body> 
    <iframe id="widget" width="100%"></iframe> 
    </body> 
    <script src="http://w.soundcloud.com/player/api.js"></script> 
    <script src="script.js"></script> 
</html> 

的JavaScript(的script.js的內容):

(function() { 
    var iframe = document.querySelector('#widget'); 
    iframe.src = 'http://w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/43315398&auto_play=true'; 

    var widget = SC.Widget(iframe); 

    widget.bind(SC.Widget.Events.PLAY, function(eventData) { 
     alert('Playing...'); 
    }); 
}()); 

您可以檢查出的工作示例here on jsfiddle

+0

我發現了這個問題。在soundcloud小部件遊樂場中,所有事件都綁定在'iframe.onload'上,即使在'widget.ready'事件中。 謝謝。 – cucko 2012-04-25 10:01:43

相關問題