向下滚动时如何更改网站标题?

时间:2016-06-26 18:31:22

标签: javascript html css

我希望当用户向下滚动时,标题会改变其背景,标题会保留在窗口的顶部。我不知道这是否需要javascript,或者你可以在css中完成。

我想要的例子就是https://anvilnode.com/

2 个答案:

答案 0 :(得分:3)

你可以使用这种代码

html:
<nav id="header_nav">nav here</nav>

的CSS:

body {
    height: 1000px;
    width: 100%;
    background-color: #F0F0F0;
}

#header_nav {
    width: 100%;
    height: 100px;
    background-color: #666;
    position: fixed;
    top: 0;
    left: 0;
}

JS

$(function(){
    $('#header_nav').data('size','big');
});

$(window).scroll(function(){
    if($(document).scrollTop() > 0) {
        if($('#header_nav').data('size') == 'big') {
            $('#header_nav').data('size','small');
            $('#header_nav').stop().animate({
                height:'40px'
            },600);
        }
    }
    else {
    if($('#header_nav').data('size') == 'small') {
        $('#header_nav').data('size','big');
        $('#header_nav').stop().animate({
            height:'100px'
        },600);
    }  
}});

答案 1 :(得分:1)

  1. 是的,你需要Javascript和CSS
  2. 用于检测滚动位置的Javascript,并向标题组件添加addtional CSS类。
  3. 使用附加CSS类名添加样式以更改背景颜色。
  4. 在你给出的同一个例子中,他们正在添加额外的css类&#39; top-nav-collapse&#39;到导航&#39;滚动的组件。您可以使用开发人员工具进行检查。