我正在使用jQuery jPlayer播放视频文件。当结束的事件发生时,我使用“setMedia”功能设置了一个新视频。在Safari中,这个结束事件只会触发一次。在其他文章中,我读了一个使用暂停事件的解决方案,但这不起作用:在结束事件中设置了setMedia之后,在Safari(5.1)中未触发任何事件,因此没有结束,也没有发生暂停事件。Safari jPlayer:结束后的事件不会在第二次后触发setMedia
代码示例:
$("#jquery_jplayer_1").jPlayer({
ready: function() {
console.log("Ready");
$(this).jPlayer("setMedia", {
m4v: "videos/main-intro.m4v"
});
},pause: function() {
console.log('Video Player Paused');
}
,ended: function() {
$("#jquery_jplayer_1").jPlayer("setMedia", {
m4v: "videos/outro-slide-1.m4v"
});
$("#jquery_jplayer_1").jPlayer("play");
console.log("Video player Ended");
}
});
在铬它workes精细,控制台日志:
准备
视频播放暂停
视频播放端
视频播放暂停
视频播放端
等。
在Safari浏览器不火setMedia之后的任何事件,它只是记录:
- Ready
当我在结束处理程序中删除setMedia函数时,事件被正确触发。
更新:然而,在iPad上它似乎随机工作。这似乎没有任何意义。
我报废了我的回答,是没有用的..你可以粘贴任何机会将有问题的代码放入小提琴中,以便我们可以测试/调试? – Lloyd 2012-02-08 13:06:39
看到这个? https://github.com/happyworm/jPlayer/issues/71 – Lloyd 2012-02-09 17:48:42
我会研究一下,并会在此尽快更新 – 2012-02-13 11:24:30