I\'m using JWPlayer 5.4 and it\'s setup on the page using the javascript API.
What I\'d like to do is make it so that users can fastforward/rewing via the seek bar O
Had been using @mal's answer for a while, but found it was breaking for some edge cases (e.g. click and drag). Could be because we're on JW player 8?
Anyway, got a modified solution that covers them pretty well if anyone is still looking for answers to this. Relies on the seeked handler which fires after the seek occurs.
var seeking = false;
var maxPlayPosition = 0;
jwplayer().on('time', function (event) {
if (!seeking) {
maxPlayPosition = Math.max(event.position, maxPlayPosition);
}
}).on('seek', function (event) {
seeking = true;
}).on('seeked', function (event) {
var pos = jwplayer().getPosition();
if (pos > maxPlayPosition) {
jwplayer().seek(maxPlayPosition);
}
seeking = false;
});
I found this a while back, probably on the JWplayer forum. I think I added a bit about the playlist. So just in case you or others are still looking for an answer, consider adding stuff like:
var maxPlayPosition = 0.0;
var seeking = false;
jwplayer().onTime(function(event)
{
if (!seeking)
{
maxPlayPosition = Math.max(event.position, maxPlayPosition);
}
})
.onPlaylistItem(function()
{
maxPlayPosition = 0.0;
}) // consider using only if you have playlists
.onSeek(function (event)
{
if (!seeking)
{
if (event.offset > maxPlayPosition)
{
seeking = true;
setTimeout(function ()
{
jwplayer().seek(maxPlayPosition);
}, 100);
}
}
else
{
seeking = false;
}
});