2014-09-23 28 views
-1

我使用客戶端JavaScript SDK連接到soundcloud。 現在我想阻止小部件中的所有最新曲目。 如果我使用SC.Widget(「frameid」)我會得到一個錯誤:Widget是不是一個函數 所以我要實現第二個腳本(插件API)Soundcloud e爲空

無論是我直接從加載腳本的SoundCloud或下載 我得到的錯誤:e is null

我試過部件API 之前加載SDK和我也嘗試加載API中的document.ready但我仍然得到同樣的錯誤。 對於選擇的iframe我試圖通過ID和document.getElementbyId(..) 但它仍然沒有工作

有人可以告訴我的解決方案? 我做錯了什麼?

+0

請創建一個小提琴或共享代碼,據我所知ū不需要sc sdk的widget api – devbnz 2014-09-23 15:18:50

+0

http://jsfiddle.net/nw H8A/112 /:S – Tim 2014-09-23 15:40:40

+0

你的小提琴不會加載jquery,這就是爲什麼你會在控制檯中看到:$沒有定義,你想顯示的軌道/ URL /配置文件?此網址:https://soundcloud.com/barehouse_1? hello to berlin ;-)再次詢問之前,請查看文檔https://developers.soundcloud.com/docs/api/html5-widget – devbnz 2014-09-23 15:53:23

回答

0

看起來像你不以正確的方式引用腳本。

我希望這個草圖點你在正確的方向:

JS

(function() { 
    var iframe2 = document.querySelector('#widget2'); 
    var widget2 = SC.Widget(iframe2); 
    var newurl = 'http://soundcloud.com/bnzlovesyou'; 

    widget2.bind(SC.Widget.Events.READY, function() { 
    alert('ready'); 
    widget2.bind(SC.Widget.Events.PLAY, function(eventData) { 
     alert('Playing..'); 
    }); 
    widget2.bind(SC.Widget.Events.PAUSE, function(eventData) { 
     alert('PAUSE..'); 
    }); 
}); 

$("#changetrack").click(function() { 
widget2.load(newurl); 
});  

}()); 

HTML

<iframe id="widget2" width="100%" src = 'http://w.soundcloud.com/player/?url=http://soundcloud.com/barehouse_1'> 
</iframe> 
<div id="changetrack">Change Track/URL to my account ;)</div> 

http://jsfiddle.net/iambnz/wpe2zmLh/

+0

好的,謝謝它的工作原理,只是如果我添加的src的iframe。 感謝您的綁定。 – Tim 2014-09-23 17:39:52