2016-09-01 5 views
5

Ich habe mehrere Videos auf einer Seite.Wie kann ich meinem HTML-Video Pufferung hinzufügen?

<div class="row text-center"> 
    <video width="320" height="240" controls class="myvideo"> 
     <source src="http://www.html5videoplayer.net/videos/toystory.mp4" type="video/mp4"> 
     Your browser does not support the video tag. 
    </video> 
</div> 

<div class="row text-center"> 
    <video width="320" height="240" controls class="myvideo"> 
     <source src="http://www.html5videoplayer.net/videos/fantasy.mp4" type="video/mp4"> 
     Your browser does not support the video tag. 
    </video> 
</div> 

Ich möchte Pufferereignisse zu ihnen hinzufügen. Wenn ich auf Video 1 klicke, sollte Video 2 (falls abgespielt) automatisch gestoppt werden. Wie kann ich das erreichen? Sie haben eine gemeinsame Klasse. Soll ich Ids mit ihnen umsetzen?

Antwort

1

geben Ids, um Ihre Videos:

<video width="320" height="240" controls class="myvideo" id="myVideoOne"> 
<video width="320" height="240" controls class="myvideo" id="myVideoTwo"> 

zur Pufferung:

var vid = document.getElementById("myVideoOne"); 
alert("Start: " + vid.buffered.start(0) 
    + " End: " + vid.buffered.end(0)); 

var vid = document.getElementById("myVideoTwo"); 
alert("Start: " + vid.buffered.start(0) 
    + " End: " + vid.buffered.end(0)); 

für stoping automatisch können Sie dies in Ihrem videoPlay1 und videoPlay2 Funktionen nutzen:

function videoPlay1() { 
    var video1 = document.getElementById("myVideoOne"); 
    var video2 = document.getElementById("myVideotwo"); 

    if (video1.paused) { 
     video1.play(); 
     video2.pause(); 
    } else { 
     video1.pause(); 
     video2.pause(); 
    } 
} 

function videoPlay2() { 
    var video1 = document.getElementById("myVideoOne"); 
    var video2 = document.getElementById("myVideotwo"); 

    if (video2.paused) { 
     video2.play(); 
     video1.pause(); 
    } else { 
     video1.pause(); 
     video2.pause(); 
    } 
} 

Beispiel: Um einen Loader für myVideoOne zu setzen, können Sie diese jquery verwenden: css:

video.loading { 
    background: black url(/yourGifImg.gif) center center no-repeat; 
} 

jquery:

$('#myVideoOne').on('loadstart', function (event) { 
    $(this).addClass('loading') 
}); 
$('#myVideoOne').on('canplay', function (event) { 
    $(this).removeClass('loading') 
}); 
+0

Ich kann den Lader auf meine Videos. –

+0

Ich habe eine jQuery für Ihren Video Loader hinzugefügt, Sie können dafür ein gif verwenden – Simo

Verwandte Themen