Witam, jestem w trakcie kodowania strony www i wpadłem na pomysł aby strona przewijała się tak jak fanpage na facebooku. Czyli, po jednej stronie będą jakieś newsy (zajmują dużo miejsca) a po drugiej jakieś bannery (zajmują mało miejsca) Chodzi o to, aby do pewnego momentu obie te "części" przewijały się równocześnie a po dojściu do końca części z bannerami przewijała się tylko część strony z tymi newsami. Mam nadzieje, że wiecie o co chodzi. Nie wiem jak to się nazywa dlatego trudno jest mi to wygooglować. Czy da się coś takiego wykonać w oparciu o html css i javascript?
Tak, musisz wychwycić odpowiedni moment korzystając z js kiedy ma się zatrzymać wtedy zmieniasz pozycjonowanie na fixed oraz top ustawiasz na odpowiednią wartość i tyle (oczywiście wszystko za pomocą js inaczej się nie da). Nie jest to jakieś specjalnie ciężkie.
a można jakoś bardziej szczegółowo?
Tak jak przedmówca napisał najpierw złap, w którym momencie nastąpi koniec części z bannerami.
Proponuję wyciągnąć Hight diva, w którym się znajdują
zmienna = $(".div").height()
a następnie sprawdzić pozycje scrollbara:
http://stackoverflow.com/questions/2481350/retrieve-scrollbar-position-with-javascript
weź sobie ją consoluj, aby zobaczyć jaka jest zależność między height diva a position scrollbar.
Kiedy trafisz na moment, w którym div dochodzi do końca zrób warunek:
if(scrollbarposition_zmienna == X) // x = miejsce w ktorym div z bannerami sie konczy
{
$(".div").css("position","fixed");
$(".div").css("bottom","0px");
}
Div z bannerami ustawi się do dolnej krawędzi strony i jako fixed. Później w odwrotną stronę musisz sprawdzać kiedy zacząć przewijać ponownie div z bannerami.
Mniej więcej powinno to tak wyglądać, pisałem z głowy, ale chyba jest ok :P