2014-04-03 46 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); 
}); 

这对我有用。