2013-01-11 14 views
26

Mam reklamę w nagłówku i stałą reklamę u dołu strony, która jest zawsze dostępna. Chcę, aby stała reklama była wyświetlana tylko wtedy, gdy użytkownik przewinął pod reklamą nagłówka. Zajrzałem do dokumentacji JQuery, ale nie jestem do końca pewien, co powinienem użyć.Przewijanie okna JQuery?

+0

można umieścić jsFiddle na przykład? – Halcyon

Odpowiedz

66

Spróbuj tego: http://jsbin.com/axaler/3/edit

$(function(){ 
    $(window).scroll(function(){ 
    var aTop = $('.ad').height(); 
    if($(this).scrollTop()>=aTop){ 
     alert('header just passed.'); 
     // instead of alert you can use to show your ad 
     // something like $('#footAd').slideup(); 
    } 
    }); 
}); 
+0

okej, dostałem twój punkt, który zaktualizuje go za chwilę. – Jai

+0

Czy możesz dodać kod, aby zapobiec odrzuceniu, np. wystrzeliwanie zbyt dużej ilości przewijania? @Jai – horse

13

Zobacz jQuery.scroll(). Możesz powiązać to z elementem okna, aby uzyskać pożądany hak zdarzeń.

Na zwoju, a następnie po prostu sprawdzić swoją pozycję przewijania:

$(window).scroll(function() { 
    var scrollTop = $(window).scrollTop(); 
    if (scrollTop > $(headerElem).offset().top) { 
    // display add 
    } 
}); 
0

sprawdzić, czy użytkownik ma przewijane obok nagłówka reklamy, a następnie wyświetlać reklamy stopki.

if($(your header ad).position().top < 0) { $(your footer ad).show() }

mam rację w tym, co szukasz?

Powiązane problemy