TubePlayer插件视频当前时间与jquery ui滑块同步



只有一些资源可以帮助我找到解决方案:)

  1. 功能齐全的无铬播放器,仅缺少与视频当前时间同步的ui滑块:http://jsfiddle.net/GR7Z2/45/
  2. jquery UI滑块文档http://jqueryui.com/demos/slider/#option-价值
  3. tikku无铬播放器插件文档http://www.tikku.com/jquery-youtube-tubeplayer-plugin#tubeplayer_tutorial_3

我遇到的问题是将jquery滑块值设置为以秒为单位的当前时间,并与当前时间保持同步我试过了:

  var seektime = $("#youtube-player-container").tubeplayer("data").currentTime;
                $( "#slider" ).slider( "option", "value", seektime );

尽管我已经学会了如何使用滑块在视频中查找时间jquery很长很乱,所以我在jsfiddle上查看它http://jsfiddle.net/GR7Z2/45/为了更清楚地理解,但这里是

$(".pause").hide();
$(".unmute").hide();
jQuery("#youtube-player-container").tubeplayer({
    width: 600,
    height: 450,
    showControls: 0,
    allowFullScreen: "true", 
    modestbranding: false,
    initialVideo: "Y70rcfQEK7U",
    preferredQuality: "default",
    onPlay: function(id){$(".play").hide();}, 
    onPause: function(){$(".pause").hide();$(".play").show();},
    onStop: function(){$(".pause").hide();$(".play").show();},
    onSeek: function(time){},
    onMute: function(){$(".mute").hide();$(".unmute").show();},
    onUnMute: function(){$(".unmute").hide();$(".mute").show();},
    onPlayerUnstarted: function(){},
    onPlayerPlaying: function(){$(".play").hide();$(".pause").show();},
    onPlayerBuffering: function(){$(".pause").show();}
});
$(".play").click(function(){
    $("#youtube-player-container").tubeplayer("play");
});
$(".pause").click(function(){
    $("#youtube-player-container").tubeplayer("pause");
}); 
$(".stop").click(function(){
    $("#youtube-player-container").tubeplayer("stop");
});
$(".mute").click(function(){
    $("#youtube-player-container").tubeplayer("mute");
}); 
$(".unmute").click(function(){
    $("#youtube-player-container").tubeplayer("unmute");
});
        function getYouTubeInfo() {
                $.ajax({
                        url: "http://gdata.youtube.com/feeds/api/videos/Y70rcfQEK7U?v=2&alt=jsonc",
                        dataType: "json",
                        success: function (data) {parseresults(data)}
                });
        }
        function parseresults(result) {
                console.log(result);    
                var vidlength = result.data.duration;   
                $('#vidlength').html(vidlength); 
            $(function() {
        $( "#slider" ).slider({ max: vidlength });
 $( "#slider" ).bind( "slidechange", function(event, ui) {
  var viseekto = $('#slider').slider('value');
     jQuery("#youtube-player-container")
       .tubeplayer("seek", viseekto);
});
  var seektime = $("#youtube-player-container").tubeplayer("data").currentTime;
                $( "#slider" ).slider( "option", "value", seektime );
    });
        }
$(document).ready(function () {
        getYouTubeInfo();
});

我正在寻找与您在这里构建的解决方案完全相同的解决方案。

感谢您的滑块功能!

我已经完成了这个脚本:

$( "#slider" ).slider({ 
    max: $("#video").tubeplayer("data").duration,
    stop: function(event, ui) {
        var viseekto = $('#slider').slider('value');
        jQuery("#video").tubeplayer("seek", viseekto);
    },
});
window.setInterval(function() {
    var seektime = $("#video").tubeplayer("data").currentTime;
    $( "#slider" ).slider( "option", "value", seektime );
}, 1000);

希望它能有所帮助!

最新更新