5

音量を低く設定できるように、Soundcloud ブログ ページにある例を使用しようとしています。

iframeサイズとプレイリストを変更し、src=音量を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 サイトで公開されています。

誰かが私が音量を制御するために欠けているものを理解するのを手伝ってくれますか?

jqueryの競合ですか?もしそうなら、それを解決する方法について何か考えはありますか?

4

2 に答える 2

5

ボリュームの範囲は実際には 0 から 1 です。これはドキュメントに誤って記載されています。したがって、ボリュームを 10% に設定する場合は、次のようにする必要があります。

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

widget.setVolume(0.1);
于 2014-08-10T11:10:13.493 に答える
0

以前の答えはもはや正確ではありません。setVolume() API は、0 から 100 の間の int を受け取るように修正/変更されました。

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
于 2018-01-23T20:27:28.230 に答える