修复了bootstrap中的导航栏

时间:2015-08-28 08:19:38

标签: html css twitter-bootstrap

我使用属性navbar-fixed-top将我的导航栏修复到顶部。但是我还有另外一个我们看不到的固定元素。

这是我固定的导航栏,在它下面,是我想看到的固定元素。

enter image description here

发生的事情是我的元素(只是称之为“线”)由选项修复,但导航栏的位置不是绝对的,所以线条在导航栏下传递,当我向下滚动时,线条很好固定,但它被导航栏隐藏。我不知道它是否清楚,但我希望这两个元素被粘合而不是叠加。

我该怎么办?

编辑:

我的jsfiddle:http://jsfiddle.net/5Zv8h/13/

如果您尝试删除enavbar,您会看到第一行保留在页面顶部。使用导航栏,它是隐藏的。

1 个答案:

答案 0 :(得分:1)

我已编写脚本来解决此问题,将其添加到您的代码中:

JS

var navheight = $(".navbar-fixed-top").innerHeight();
var offtop = $(".ht_clone_top").offset().top;
$(window).scroll(function(){
    var scrolltop = $(window).scrollTop();
    if(scrolltop + navheight >= offtop){
        if(!($(".ht_clone_top").hasClass("affixed"))){
            $(".ht_clone_top").addClass("affixed");
        }
        if(offtop>= scrolltop){
            console.log("now");
            $(".ht_clone_top").css({
                "top": scrolltop - 40
            });
        } else {
            $(".ht_clone_top").css({
                "top": 50
            });
        }
    } else {
        $(".ht_clone_top").removeClass("affixed");
        $(".ht_clone_top").css({
            "top": 0
        });
    }
});

CSS

.affixed {
    z-index: 99999;
    position: absolute;
}

演示: http://jsfiddle.net/5r9p380n/2/