Задать вопрос
rogerCopy
@rogerCopy

JS: $('body').append(''); как создать элемент 1 раз при начале прокрутки?

Здравствуйте, господа. Как по скроллингу (вниз) создать элемент один раз?

Если добавить в нижеприведенный код строку animated bounce (animate.css)
$('body').append('<button class="btn_up animated bounce" />');
, то видно, что при прокрутке кнопка создается бесконечно

$(window).scroll(function() {
  if ($(window).scrollTop() > 300) { //если прокрутили на 300 вниз
    $('body').append('<button class="btn_up" />'); 
  } 
  if ($(window).scrollTop() == 0) { //если прокрутили вверх до 0
    $('.btn_up').remove(); 
  }  
  $('.btn_up').click(function() {
    $('body, html').animate({'scrollTop': 0}, 500);
  });
});
  • Вопрос задан
  • 244 просмотра
Подписаться 1 Простой 3 комментария
Решение пользователя Stalker_RED К ответам на вопрос (2)
Stalker_RED
@Stalker_RED
var btnCreated = false;
$(window).scroll(function() {
  if (!btnCreated) {
    // создаем кнопку
    // ...
    btnCreated = true; // и переключаем флаг
  }
});
Ответ написан