2013-07-27 188 views
1

基本上我试图做的是在视频重播完成后重定向到不同的网页(非常类似于YouTube用于播放列表的视频)。在尝试这种类型的问题之前,我已经尝试了一些研究,但似乎没有任何东西可以解决。HTML5视频重定向

下面的代码:

<video id="example_video_1" class="video-js vjs-default-skin" 
    controls preload="auto" width="854" height="480" 
    poster="images/thumbnailbackgrounds/AE-DageSide.jpg" 
    data-setup='{"example_option":true}'> 
    <source src="files/Clip1.mp4" type='video/mp4' /> 
</video> 

回答

0

因为它看起来像你正在使用的Video.js对于这一点,你应该看看他们的文档:

https://github.com/videojs/video.js/blob/master/docs/index.md

具体而言, API部分:

https://github.com/videojs/video.js/blob/master/docs/api.md

在 “事件” 一节,它说:

结束

Fired when the end of the media resource is reached. currentTime == duration

所以你需要得到一个参考您的播放器(也是页):

var myPlayer = videojs("example_video_1"); 

然后监听结束事件,并从那里重定向:

function endedFunction(){ 
    window.location = 'http://www.example.com/'; 
} 

myPlayer.on("eventName", endedFunction); 
+0

谢谢M Sost和Bram Vanroy提供的帮助文章。该问题已得到解决 –

0

this answer借用,请尝试以下操作。你不需要video.js。 HTML

<video id="example_video_1" class="video-js vjs-default-skin" 
    controls preload="auto" width="854" height="480" 
    poster="images/thumbnailbackgrounds/AE-DageSide.jpg" 
    data-setup='{"example_option":true}'> 
    <source src="files/Clip1.mp4" type='video/mp4' /> 
</video> 

的JavaScript

<script> 
    var video = document.getElementsByClassName("video-js"); 

    // Or select element by HTML tag 
    // var video = document.getElementsByTagName('video')[0]; 

    video.onended = function() { 
     window.location.href = "www.yoururl.com"; 
    } 
</script> 

应该工作。

+0

这也将起作用,但应该注意Video.JS包装视频/更改DOM,更改视频元素的ID。请看这里的例子:http://www.videojs.com/。源元素具有home_video的ID,但是在页面加载之后,视频元素然后获得home_video_html5_api –

+0

@MSost的ID相应地被注释和编辑。 –