到达第4张幻灯片时,重新启动视频

时间:2017-03-21 03:49:12

标签: javascript jquery flexslider ytplayer

我正在使用Flexslider,在第4张幻灯片中,我有一个使用YTPlayer的YouTube视频

这里是第4张幻灯片的html结构

<li>
    <div class="player" data-video-id="ASDsad65w9e52" data-start-at="0>
    </div>
</li>

和javascript一起检测到它到达第4张幻灯片时,我只是使用&#39;结束&#39;参数

$('#home-slider').flexslider({
    end : function(){

    }
});

然后当它到达第4张幻灯片或只是结束幻灯片时,然后重新初始化YTPlayer以在开始时播放视频或再次播放。

$('#home-slider').flexslider({
    end : function(){
        $("#home-slider .player").YTPlayer();
    }
});

但不幸的是,它不起作用,相反它给了我这个错误

  

未捕获的TypeError:$(...)[0] .YTPPlay不是函数       在Object.end(scripts2.js:310)       在m.fn.init.a.flexAnimate(flexslider.min.js:1)       在a.animateSlides(flexslider.min.js:1)

任何想法,请帮忙吗?

1 个答案:

答案 0 :(得分:0)

试试这个

$("#home-slider .player").YTPPlay();

有关详细参考,请查看

https://github.com/pupunzi/jquery.mb.YTPlayer/wiki

将以下代码移至$(window).load()

if ($('.player').length) {
    $('section').closest('body').find(".player").YTPlayer();
}

$('.slider-all-controls').flexslider({
    end: function() {
        $('#home-slider .player').YTPlayer();
    }
});

请注意,您的ytp看起来像旧版本,它不支持YTPPlay()它使用playYTP();

虽然你需要在网站中重构你的代码..方式太乱了