2016-01-03 3 views
0

У меня есть одна веб-страница, в которой будут добавлены текст и видео, используя javascript video. Какой код javascript/jquery можно использовать для прокрутки страницы по заданной скорости, остановки прокрутки, воспроизведения видео и продолжения прокрутки до нижней части страницы, где она перезапускается?jquery Прокрутка автоматически, воспроизведение видео, перезагрузка

Edit: Я попытался http://www.jquerybyexample.net/2013/05/jquery-scroll-page-automatically-by-few-pixels-after-every-few-seconds.html и http://jdsharp.us/jQuery/plugins/AutoScroll/ и http://jsfiddle.net/NaP8D/11/.

//run instantly and then goes after (setTimeout interval) 

$("html, body").animate({ scrollTop: $(document).height() }, 4000); 
setTimeout(function() { 
    $('html, body').animate({scrollTop:0}, 4000); 
},4000); 
setInterval(function(){ 
    // 4000 - it will take 4 secound in total from the top of the page to the bottom 
$("html, body").animate({ scrollTop: $(document).height() }, 4000); 
setTimeout(function() { 
    $('html, body').animate({scrollTop:0}, 4000); 
},4000); 

},8000); 

Мне не удалось заставить код остановиться на любом из них.

+0

Отредактировано сообщение и добавлено то, что я пробовал. –

+0

Нигде в вашем коде не дождалось, пока видео будет воспроизводиться/дождитесь, пока видео перестанет играть. Это то, с чем у вас проблемы? – GAntoine

+0

Этот код был из jsfiddle. Но да, этот код работает, приостанавливая прокрутку и заставляя его ждать, проблема. –

ответ

0

Это должно дать вам общее представление о том, что вам нужно. Без какого-либо кода HTML или более JS я не могу дать конкретный ответ. Здесь #myVideo - это id видео.

// scrolls to the video 
$("html, body").animate({ scrollTop: $("#myVideo").offset().top }, 4000); 

// $("#myVideo") should return a video element 
var video = $("#myVideo"); 

// called when the video/playlist ends 
video.onended = function() { 
    // scrolls to the bottom of the page 
    $("html, body").animate({ scrollTop: $(document).height() }, 4000); 
}; 

Вам нужно будет немного изменить его, чтобы он соответствовал вашему коду. Если вы хотите его закодировать:

while(1){ 
    $("html, body").animate({ scrollTop: $("#myVideo").offset().top }, 4000); 
    var video = $("#myVideo"); 
    video.onended = function() { 
    $("html, body").animate({ scrollTop: $(document).height() }, 4000); 
    setTimeout(function() { 
     $("html, body").animate({ scrollTop: $(0).height() }, 4000); 
    },4000); 
    }; 
} 
+0

Что делает «4000» в коде? Что бы он контролировал, если он был изменен? –

+0

Сколько времени требуется для прокрутки вниз до видео. – GAntoine

+0

Кроме того, что нужно добавить, чтобы обновить все, т. Е. Создать бесконечно бегущую страницу? –