@Siretsky

Как остановить функцию Jquery?

<script type="text/javascript">
$(document).ready(function(){ 
         $(window).scroll(function(){
		if ($(this).scrollTop() > 3000) {
		     $("#IndexNewCar").html("<video id='videos' preload='auto' autoplay poster='/v/poster.png'><source src='/v/bgvideo.mp4' type='video/mp4'/><source src='/v/bgvideo.webm' type='video/webm'/><source src='/v/bgvideo.ogg' type='video/ogg'/></video>");
		}
	 }); 
});
 </script>


Проблема в следующем - при повторной прокрутке видео начинает заново играть, т.е, когда я прокручиваю сайт, то функция снова запускается. Подскажите пожалуйста как сделать так, чтобы она запустилась только один раз?

Спасибо!
  • Вопрос задан
  • 4196 просмотров
Решения вопроса 1
alexclear
@alexclear
A cat
Наверное, как-то вот так?

<script type="text/javascript">
var already_scrolled = 0;
$(document).ready(function(){ 
         $(window).scroll(function(){
		if (already_scrolled == 0 && $(this).scrollTop() > 3000) {
                     already_scrolled = 1;
		     $("#IndexNewCar").html("видео");
		}
	 }); 
});
</script>
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
<script type="text/javascript">
$(document).ready(function(){ 
        var played=false;
         $(window).scroll(function(){
		if (!played && $(this).scrollTop() > 3000) {
		     $("#IndexNewCar").html("видео");
                      played=true;
		}
	 }); 
});
 </script>
Ответ написан
Комментировать
$(function(){ 
	$(window).on('scroll.video', function(){
		if ($(this).scrollTop() > 3000) {
			$("#IndexNewCar").html("видео");
			$(window).off('.video');
		}
	}); 
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы