Может кто подскажет,
нашел вот такой скрипт (для фиксированого меню), вроде все работает хорошо, но при остановке прокрутки страницы,
блок с меню прокручиваеться("пролетает") немного дальше (чем быстрее прокрутка, тем дальше), и лишь потом возращается на место.
Можно ли это изменить или подскажите другое решение. Спасибо.
$(function() {
var offset = $("#fixed").offset();
var topPadding = 15;
$(window).scroll(function() {
if ($(window).scrollTop() > offset.top) {
$("#fixed").stop().animate({marginTop: $(window).scrollTop() - offset.top + topPadding});
}
else {$("#fixed").stop().animate({marginTop: 0});};});
});
Комментарии
Я фиксировал меню через CSS
.fixed-menu {
left: 0;
position: fixed !important;
top: 0;
width: 100%;
z-index: 101;
}
Ситуация немного другая -
во-первых - у меня страница не на всю ширину,
а еще над меню имеется "шапка", которую при прокрутке желательно спрятать.
Так что кажется без скрипта не обойтись.
var topPadding = 15;
оно?
Нет, эту переменную я вообще убрал. Все по-старому.
Я предполагаю, что это чисто анималистический эффект,
несоответствие скорости прорисовки страницы при прокрутке и расчетов анимации фиксованого блока.