Написал простой скрипт для удержания меню вверху при прокрутке, но иногда оно начинает дергаться вверх-вниз. Например: перезагрузил страницу и резко скролил вниз, а меню будто еще не успело отлипнуть, но даже с течением 300 +- 100мс еще двигается ( Такое случается редко, но все же случается ). Что я не так написал ?
.top-navigation
nav.top-bar
.top-bar-left
include ../components/navbar
var $_main_menu = $('#header .top-bar');
$(document).ready(function() {
var menu_y = $_main_menu.offset().top;
var menu_h = $_main_menu.height();
var $_menu_container = $_main_menu.parent();
$(window).on('scroll', function(e) {
if ($(this).scrollTop() >= menu_y) {
if ($_main_menu.attr('position') != 'fixed') {
$_main_menu.attr({ 'position': 'fixed' });
$_menu_container.height(menu_h);
}
} else {
$_main_menu.removeAttr('position');
$_menu_container.css('height', 'auto');
}
});
});