使用video-js跳转到HTML5嵌入式视频中的时间戳

时间:2011-06-02 23:02:22

标签: javascript html5 html5-video

问候溢出,

我正在尝试在网页上创建按钮,跳转到带有video-js的嵌入视频的标记时间戳。尽管我可以收集,但我需要更改currentTime值以使视频移动到正确的时间戳,但即使在初始javascript调用中设置currentTime,我也无法使其工作。

例如,如果我想在视频中开始200秒:

的javascript:

    VideoJS.setupAllWhenReady();
    VideoJS.DOMReady(function(){
    var myPlayer = VideoJS.setup("current_video");
    myPlayer.play();
    myPlayer.currentTime(200);
    });

HTML Snip:

<video id="current_video" class="video-js" width="400" height="300" controls="controls" preload="auto" poster="./videoposter.png">
<source src="./videosource.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
</video>

同样,视频使用video-js播放器正常播放,似乎没有应用currentTime偏移,视频从头开始。我已经在chrome,safari,IE中对它进行了测试,它们似乎都做了同样的事情,所以我认为问题不是浏览器特定的。我一定做错了......

感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

删除“VideoJS.setupAllWhenReady();”它应该工作。这就是我所拥有的:

<!DOCTYPE html>
<html>
 <head>
  <title>Sample styled page</title>
  <script src="video-js/video.js" type="text/javascript" charset="utf-8"></script>
    <link rel="stylesheet" href="video-js/video-js.css" type="text/css" media="screen" title="Video JS" charset="utf-8">
 </head>
 <body>
  <h1>Sample styled page</h1>
  <p>This page is just a demo.</p>
  <video id="current_video" class="video-js" width="400" height="300" controls="controls" preload="auto">
    <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' />
  </video>
  <script>
    //VideoJS.setupAllWhenReady();
    VideoJS.DOMReady(function() {
        var myPlayer = VideoJS.setup("current_video");
        myPlayer.play();
        myPlayer.currentTime(200);
    });

  </script>
 </body>
</html>

答案 1 :(得分:2)

 $(function(){
 var myPlayer = _V_("my_video_1");
     _V_("my_video_1").ready(function(){ 

     myPlayer.src([
      { type: "video/mp4", src: "http://video-js.zencoder.com/oceans-clip.mp4" },
      { type: "video/webm", src: "http://video-js.zencoder.com/oceans-clip.webm" }
    ]);  

    });
  });

  $(window).load(function(){
  var myPlayer = _V_("my_video_1");

 myPlayer.currentTime(30); 
 myPlayer.play()
  });