Zasadniczo mam obecnie div, który pozostaje stały i podąża za użytkownikiem w trakcie przewijania, aż osiągnie określony punkt. Mogę z łatwością sprawić, że zatrzyma się na ustalonej pozycji piksela, tak jak to zrobiłem w poniższym przykładzie, ale ponieważ jestem idiotą jQuery, nie mam pojęcia, jak sprawić, by zatrzymał się na divie.Zatrzymaj div przewijanie po dotarciu do innego div
Oto co Używałem do tej pory:
var windw = this;
$.fn.followTo = function (pos) {
var $this = this,
$window = $(windw);
$window.scroll(function(e){
if ($window.scrollTop() > pos) {
$this.css({
position: 'absolute',
top: pos
});
} else {
$this.css({
position: 'fixed',
top: 0
});
}
});
};
$('#one').followTo(400);
Oto przykład: jsFiddle
Powodem chcę go zatrzymać po osiągnięciu drugiego div dlatego z układem płynnej I” m używając, drugi div będzie siedział w różnych punktach w zależności od rozmiaru przeglądarki. Zdefiniowanie konkretnego punktu, w którym ma się zatrzymać, nie będzie działać. Czy ktoś ma jakieś pomysły na to, w jaki sposób mogę zrobić to, czego chcę? Alternatywnie, czy stały div może przestać przewijać, gdy osiągnie procent drogi w dół? Rozejrzałem się, ale niczego nie znalazłem.
Dzięki za pomoc.
Dobry panie, to działa! A teraz idź i sprawdź, dlaczego to działa. MicronXD, jesteś dżentelmenem i uczonym, dziękuję ci śmiesznie. – mattmouth
Przeprasza z góry za bycie tak potrzebującym haha. Czy jest możliwe, aby jakoś dodać ten konkretny kod do czegoś podobnego do tego - http://jsfiddle.net/cpL69/13/ - jak w, div nie rozpoczyna przewijania dopóki nie zostanie osiągnięty i kończy się na drugim div jako zrobił to w twoim przykładzie? – mattmouth
dodano go na końcu odpowiedzi. NP ... to jest to, co spędzam cały dzień robiąc ... jeszcze, jakoś nadal czerpię przyjemność z zarabiania "bezsensownych punktów internetowych" za robienie tego więcej. To może być bardziej efektywne, ale jestem zajęty. Zaciągnę to później dla ciebie. – MicronXD