我在全宽英雄图像下面的导航栏上设置了词缀,所需的结果是导航栏向上滚动,一旦它触及页面顶部就会粘住。 问题是,图像高度是动态的,它是全宽图像,因此我无法为偏移设置固定的像素高度。我正在使用jquery根据导航栏位置设置偏移量,但导航栏一旦到达顶部就会跳回到原始位置。
此CSS应在应用.affix
时定位导航栏
#navbar-wrapper.affix {
top: 0px;
position: fixed;
width: 100%;
}
这是生成词缀的jQuery
$(function() {
$('#navbar-wrapper').height($("#nav").height());
});
$('#nav').affix({
offset: $('#nav').position()
});
这是一个jsfiddle: http://jsfiddle.net/MarkMarine/q3J56/4/
我根据下面的回复进行了一些编辑(并稍微调整了一下) 对我来说,修复是选择.hero-image类的高度,而不是导航栏的位置。
$('#navbar-wrapper').affix({
offset: {
top: $('.hero-image').height()
}
});
谢谢!!! 为后代更新了jsfiddle
答案 0 :(得分:1)
$('#nav').affix()
为您的ID .affix
添加课程#nav
。在CSS中,您使用#navbar-wrapper.affix
此选择器选择具有两个类的元素。因此,请使用#nav.affix
或在第一个选择器#navbar-wrapper .affix
中添加空格。