//= require_self $(function() { $("body").attr("data-spy", "scroll").attr("data-target", ".subnav").attr('data-offset', "50"); $(document).scroll(function(){ // If has not activated (has no attribute "data-top" if (!$('.subnav').attr('data-top')) { // If already fixed, then do nothing if ($('.subnav').hasClass('subnav-fixed')) return; // Remember top position var offset = $('.subnav').offset() $('.subnav').attr('data-top', offset.top); } if ($('.subnav').attr('data-top') - $('.subnav').outerHeight() <= $(this).scrollTop()) { $('.subnav').addClass('subnav-fixed'); } else { $('.subnav').removeClass('subnav-fixed'); } }); })