web-dev-qa-db-ja.com

HTML5ビデオカスタム追加シークバー

HTML5ビデオをいじくり回しています。 Vanilla HTML5を使用して作業しているビデオがあります<video>タグ、次のようなもの:

<video id="video" width="250" height="250" controls>
    <source src="video_src.mp4" type="video/mp4">
</video>

すべては順調です。私が探しているのは、ビデオの下部に追加のシークバーを表示する方法です。シークバーは、ビデオを表す画像です。画像の任意の場所をクリックすると、ビデオはそのポイントに移動します。

繰り返しますが、これは、デフォルトのビデオ機能に付属するデフォルトの進行状況バーに加えて機能します。デフォルトとカスタムのシークバーは同期している必要があるため、一方が更新されると、もう一方も移動します。

誰かが私を正しい方向に向けることができますか?

ありがとう!

8
intl
var vid = document.getElementById("video");
vid.ontimeupdate = function(){
  var percentage = ( vid.currentTime / vid.duration ) * 100;
  $("#custom-seekbar span").css("width", percentage+"%");
};

$("#custom-seekbar").on("click", function(e){
    var offset = $(this).offset();
    var left = (e.pageX - offset.left);
    var totalWidth = $("#custom-seekbar").width();
    var percentage = ( left / totalWidth );
    var vidTime = vid.duration * percentage;
    vid.currentTime = vidTime;
});//click()
#custom-seekbar
{  
  cursor: pointer;
  height: 10px;
  margin-bottom: 10px;
  outline: thin solid orange;
  overflow: hidden;
  position: relative;
  width: 400px;
}
#custom-seekbar span
{
  background-color: orange;
  position: absolute;
  top: 0;
  left: 0;
  height: 10px;
  width: 0px;
}

/* following rule is for hiding Stack Overflow's console  */
.as-console-wrapper{ display: none !important;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div id="custom-seekbar">
  <span></span>
</div>
<video id="video" width="400" controls autoplay>
    <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
</video>
29
Mohit Bhardwaj