Я борюсь с автоматической паузой, а затем снова играю (вручную). Видео приостанавливается через 2 секунды, и это нормально. Теперь есть еще одна кнопка, и при нажатии этой кнопки видео должно начинаться с позиции, в которой она была приостановлена.
Вот мой код (html):
<div class="restart">Restart after pause</div>
<video id="video" width="400" height="400" id="video" src="http://media.w3.org/2010/05/sintel/trailer.mp4" controls autoplay />
JQuery:
jQuery(document).ready(function ($) {
$('#video').get(0).play();
setInterval(function () {
if ($('#video').get(0).currentTime >= 2) {
$('#video').get(0).pause();
}
}, 100);
$(".restart").click(function(event){
$('#video').get(0).play();
setInterval(function () {
if ($('#video').get(0).currentTime >= 6) {
$('#video').get(0).pause();
}
}, 100);
});
});
Я определенно не на правильном пути относительно текущего времени и установленного времени. Пожалуйста, предложите.
JSFiddle - это
http://jsfiddle.net/squidraj/KmQxL/10/
Заранее спасибо.
Просмотрите эту скрипту: http://jsfiddle.net/VZuuF/1/
Я избавился от ваших setIntervals, так как они не являются необходимыми при timeupdate
события timeupdate
.
$(document).ready(function()
{
var checkedFirst = false;
var checkedSecond = false;
$player = $('#video').get(0);
$player.play();
$player.addEventListener('timeupdate', function(event)
{
console.log($player.currentTime);
if ($player.currentTime >= 2 && !checkedFirst)
{
checkedFirst = true;
$player.pause();
}
if ($player.currentTime >= 6 && !checkedSecond)
{
checkedSecond = true;
$player.pause();
}
});
$(".restart").click(function(event)
{
$player.play();
});
});
timeupdate