我正在尝试使用每2分钟过期的链接来传输视频。
基本上,我使用此函数来替换URL,并且效果很好:
function test(){
var videoFile = 'new.mp4';
var $video = $('#m video');
var curtime = $video[0].currentTime;
videoSrc = $('source', $video).attr('src', videoFile);
$video[0].load();
$video[0].currentTime = (curtime);
$video[0].play();
}
我的问题是,每当视频开始播放/有人搜索后,我该如何触发此功能?如果我解雇ok();使用播放事件的函数然后它会启动一个循环,因为函数本身会导致播放事件。
有没有人对如何妥善解决这个问题有任何想法?
答案 0 :(得分:0)
解决方案是在视频实际启动play
后注册playing
事件。这样它会在暂停或寻找后作出反应。
如果您需要在其他条件下禁用该事件,则只需禁用play
事件(如playing
函数的开头所示)...
function test(){
var videoFile = 'trailer.mp4';
var $video = $('#video');
var curtime = $video[0].currentTime;
videoSrc = $('source', $video).attr('src', videoFile);
$video[0].load();
$video[0].currentTime = (curtime);
$video[0].play();
$video.on('playing', function () {
$video.off('play') // remove existing Play event if there is one
console.log("Play event bound")
$video.on('play', function () {
console.log("Video play. Current time of videoplay: " + $video[0].currentTime );
});
});
}