Przygotowałem skrypt, który przykleja element do okna przeglądarki (position:fixed) gdy górna kraweź przeglądarka zjeżdżając w dół, scrolując osiągnie już ten element
Już mniej więcej działa, jak osiągne górną granice tego elementu, to zmienia sie pozycja.
<script> $(document).ready(function() { $(document).on('scroll', function() { var header_height = $("#top-fixed-menu").outerHeight(); var offset = $("#top-fixed-menu").offset();//offset czyli pozycja wzgleden góry strony. var offset_top = offset.top; if ($(window).width() > 960) {//tylko dla szerokich monitorów if ($(window).scrollTop() >= offset_top) { $("#top-fixed-menu").addClass("fly_lista"); } else { $("#top-fixed-menu").removeClass("fly_lista"); } } }); }); </script> <style> #top-fixed-menu { position: relative; background: #262f36; float: right; width: 380px; min-height: 100px; color: #fff; } .fly_lista { position: fixed !important; top: 0px !important; right: 0px !important; } </style>
Prosze o pokierowanie. Widzę, że w momencie gdy element dostaje position fixed, parametr top jest dosyc łatwy do określenia ale co z pozycją right? :/
Dodatkowo jak wracam spowrotem na góre to element dalej ma pozycje fixed. Coś nie tak jest z kodem javascript.