我刚刚做了一个小的videojs例子,它有一个登录事件播放,我正在使用类似play(),pause()
的api。
var myplayer;
var playCount = 0;
videojs("example_video_1").ready(function(){
myplayer = this;
myplayer.on("play", function(){
playCount++;
$("#count").text(playCount)
});
});
$("#test").click(function (){
myplayer.pause();
myplayer.play();
});
问题是,在执行api时,play事件将进入无限循环。
我可以在触摸设备中找到这个问题,如果我启用控制,即使在寻找酒吧,做播放暂停等。所以如果我没有使用组合,我也可以找到这个问题。
在内部,库在seek或其他控件中使用这些api?
jsfiddle中的链接LIVE BUG:
最佳答案
这是video js事件处理中的一个错误:
https://github.com/videojs/video.js/issues/573https://github.com/videojs/video.js/issues/620同时,一种解决方法是在超时时设置任何播放/暂停开关。
$("#test").click(function (){
myplayer.pause();
window.setTimeout(function() {myplayer.play();}, 10);
});