2012-09-04 73 views
5

我一直在嘗試使用此Soundcloud博客頁面上給出的示例,以便我可以將音量設置得更低。 http://developers.soundcloud.com/blog/html5-widget-api控制Soundcloud HTML5 Widget播放器卷

我只改變了iframe大小和src =我的播放列表和set.Volume爲10,所以我可以注意到它的區別,如果它的工作。到目前爲止沒有變化的數量仍然是100%

我已經嘗試過,並沒有將以下內容放在我的模板的頭部。似乎並不重要。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 

下面是我從的SoundCloud調整。例如代碼:

<iframe id="sc-widget" width="350" height="332" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Fplaylists%2F1417174&auto_play=true&show_artwork=false&color=37415f"></iframe> 

    <script src="http://w.soundcloud.com/player/api.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
    (function(){ 
    var widgetIframe = document.getElementById('sc-widget'), 
     widget  = SC.Widget(widgetIframe); 

    widget.bind(SC.Widget.Events.READY, function() { 
     widget.bind(SC.Widget.Events.PLAY, function() { 
     // get information about currently playing sound 
     widget.getCurrentSound(function(currentSound) { 
      console.log('sound ' + currentSound.get('') + 'began to play'); 
     }); 
     }); 
     // get current level of volume 
     widget.getVolume(function(volume) { 
     console.log('current volume value is ' + volume); 
     }); 
     // set new volume level 
     widget.setVolume(10); 
    }); 

    }()); 
    </script> 

這裏是Joomla的網站,這個代碼是活的。 http://mediaservicesnyc.com/

有人可以幫助我瞭解我缺乏控制音量。

這是一個jQuery的衝突?如果是這樣,關於如何解決它的任何想法?

此致 埃裏克

回答

6

體積範圍實際上是從0到1,這是在文檔中錯誤地說明。因此,如果您想將音量設置爲10%,您需要:

var widgetIframe = document.getElementById('sc-widget'), 
widget  = SC.Widget(widgetIframe); 

widget.setVolume(0.1); 
0

上一個答案不再準確。 setVolume()api已被修正/更改爲0到100之間的整數。

我偶然發現了這個問題,試圖使用chrome控制檯快速更改嵌入式SoundCloud iframe的音量。我爲自己創造了一個快速要點。 https://gist.github.com/propagated/78aaedfbc0c23add7691bb975b51a3ff

//load soundcloud js api if needed 
var script = document.createElement('script'); 
script.type = 'text/javascript'; 
script.src = 'http://w.soundcloud.com/player/api.js'; 
document.head.appendChild(script); 

//get the id of the player iframe or inject it using chrome 
var id = 'scplayer', 
    widgetIframe = document.getElementById(id), 
    fixWidget = SC.Widget(widgetIframe); 
fixWidget.setVolume(50); //% between 1 and 100 
相關問題