2016-11-10 6 views
0

Я пытаюсь показать баннер прокрутки более 1000 пикселей. Итак, он работает, но мне нужно открыть и закрыть его только один раз.JQuery Показать и скрыть баннер на прокрутке

Here my complete demo

Это мой .js

$(window).scroll(function() { 
     if ($(this).scrollTop() > 1000) { 
    $("#banner-promo").fadeIn("slow", function() {}); 

     } 

     else { 
      // $('#BackToTop').css({'visibility': 'hidden'}); 
      $("#banner-promo").fadeOut("slow", function() {}); 
     } 
    $("#chiudi").click(function(){ 
    $("#banner-promo").fadeOut("slow"); 
}); 
}); 

Что лучшая практика, чтобы сделать это?

Заранее спасибо

+0

Я не знаю, что я понимаю. Когда я добираюсь до сути, я вижу 'fadeIn()'. Вы хотите, чтобы он больше не мог прокручивать вверх и повторять это действие? Почему бы не изменить 'html {height}' back to '1000px'? – Twisty

+0

Почему бы не обработать его, как диалоговое окно. Установите абсолютное положение 'top: 1000', и когда пользователь прокрутит вниз, они смогут увидеть его. Когда они нажимают кнопку, элемент удаляется или скрывается. – Twisty

+0

hi @Twisty это баннер, чтобы ввести призыв к действию на веб-странице: вы можете «Войти» или «Нет благодарности» кнопками ... в любом случае я хочу показать его только один раз, когда вы просматриваете 1000 пикселей и закройте его навсегда, когда вы нажмете «Нет спасибо» .. Теперь, если вы закроете его кнопкой, он снова вернется, потому что вы все еще прокручиваете 1000px –

ответ

0

На основе комментариев, ответ вы пошли с было использовать remove(), чтобы взять элемент прочь против скрывая его.

Например: https://jsfiddle.net/Twisty/0go8snsL/

$("#banner-promo").remove();

Смежные вопросы