2014-04-03 52 views
0

我使用的SoundCloud播放器插件,並希望進軍SEEK事件。我遇到的問題是e.currentPosition的事件參數顯示的是以前的當前位置 - 而不是我所尋求的當前位置。的SoundCloud窗口小部件&Events.SEEK

widget.bind(SC.Widget.Events.PLAY, function (e) { 

         var test; 
       }); 

如果你在歌曲的測試中放置了一個斷點,你可以看到我的意思。是否有可能找到所尋找的位置而不是它開始的位置?

回答

0

位哈克,但我發現它的工作 - 只是暫停窗口小部件並等待它更新到新的位置 - 一旦你想用新的什麼位置,繼續播放曲目並清除檢查的間隔。

var oldpos = e.currentPosition; 
widget.pause(); 

var waiter = setInterval(function(){ 
    widget.getPosition(function(pos){ 
     if (pos != oldpos){ 
      // pos is the position that was skipped to. 
      widget.play(); 
      clearInterval(waiter); 
     } 
    }); 
}, 100); 
0

使用SEEK事件偵聽器有什麼問題?

widget.bind(SC.Widget.Events.SEEK, function(e) { 
    alert('New seek position: '+e.currentPosition); 
}); 

這對我有用。