2016-04-06 20 views
0

SoundCloudを使用してポッドキャストを共有したいのですが、リスナーがオーディオをスクラブするのに役立つリンクをいくつか作成しました。例:SoundcloudウィジェットAPI - seekToは一時停止したオーディオでは機能しません

<a href="#" onclick="SC.Widget('player').seekTo(10000);">GO TO 10s</a> - 
<a href="#" onclick="SC.Widget('player').seekTo(30000);">GO TO 30s</a> 

したがって、ユーザーが「GO TO 10s」をクリックすると、オーディオは10秒に移動する必要があります。ただし、ユーザーが再生ボタンを押した後でのみ機能します。
「GO TO」リンクをクリックすると、オーディオを開始して適切な時間にオーディオを移動する方法はありますか?

ありがとうございます!私はちょうど私を固定

答えて

0

私は波形上のユーザーのクリックをさせる同様の何かを...

_getScWidgetは()てSoundcloudウィジェット

コードスニペット

this.getWaveformClick = function() { 
    try { 

     ... 
     // target is calculated position in ms based on where on the waveform the user clicks 
     this._getScWidget().isPaused(function isPaused(p) { 
     if (p == true) { 
      // if paused play then seek 
      self._getScWidget().play(); 
      self._getScWidget().seekTo(target); 
     } else { 
      // if not paused, just seek 
      self._getScWidget().seekTo(target); 
     } 
     }); 
    } catch (e) { 
     // error handler 
    } 
    } 
+0

ありがとう、@SteveE! :)私は私の問題を解決しました。 – leguimas

0

を返す関数であります@SteveE答えに触発された問題。コードは次のとおりです。

var player = SC.Widget('player'); 
var miliseconds = -1; 

player.bind(SC.Widget.Events.PLAY, function() { 
    if (miliseconds >= 0) { 
     player.seekTo(miliseconds); 
    } 
}); 

seekTo = function(minutes, seconds) { 
    miliseconds = ((minutes * 60) + seconds) * 1000; 

    player.isPaused(function isPaused(p) { 
     if (p == true) { 
      player.play(); 
     } else { 
      player.seekTo(miliseconds); 
     } 
    }); 
} 
関連する問題