html - 当用户滚动页面时降低导航栏的高度

标签 html css twitter-bootstrap

我想添加一个初始高度较长的导航栏。并且当用户滚动时高度降低并且 Logo 变小。我正在使用 Bootstrap,我的代码如下所示。

谁能帮我编辑代码,这样我就可以在滚动页面时降低导航栏的高度。

                <div class="navbar-header">
                    <button type="button" class="navbar-toggle" data-toggle="collapse"
                        data-target="#bs-example-navbar-collapse-1">
                        <span class="sr-only">Toggle navigation</span> <span
                            class="icon-bar"></span> <span class="icon-bar"></span> <span
                            class="icon-bar"></span>
                    </button>
                    <a class="navbar-brand" href="#">project a</a>
                </div>

                <!-- Collect the nav links, forms, and other content for toggling -->
                <div class="collapse navbar-collapse"
                    id="bs-example-navbar-collapse-1">
                    <ul class="nav navbar-nav">
                        <li class="active"><a href="#">Link</a></li>
                        <li><a href="#">Link</a></li>
                        <li class="dropdown"><a href="#" class="dropdown-toggle"
                            data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                            <ul class="dropdown-menu">
                                <li><a href="#">Action</a></li>
                                <li><a href="#">Another action</a></li>
                                <li><a href="#">Something else here</a></li>
                                <li class="divider"></li>
                                <li><a href="#">Separated link</a></li>
                                <li class="divider"></li>
                                <li><a href="#">One more separated link</a></li>
                            </ul></li>
                    </ul>
                    <form class="navbar-form navbar-left" role="search">
                        <div class="form-group">
                            <input type="text" class="form-control" placeholder="Search">
                        </div>
                        <button type="submit" class="btn btn-default">Submit</button>
                    </form>
                    <ul class="nav navbar-nav navbar-right">
                        <li><a href="#">Link</a></li>
                        <li class="dropdown"><a href="#" class="dropdown-toggle"
                            data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                            <ul class="dropdown-menu">
                                <li><a href="#">Action</a></li>
                                <li><a href="#">Another action</a></li>
                                <li><a href="#">Something else here</a></li>
                                <li class="divider"></li>
                                <li><a href="#">Separated link</a></li>
                            </ul></li>
                    </ul>
                </div>
                <!-- /.navbar-collapse -->
            </div>
            <!-- /.container-fluid -->
        </nav>

最佳答案

这将帮助您实现您的目标。

jsFiddle

$(function(){
    $('#navigation-bar').data('size','big');
});

$(window).scroll(function(){
    var $nav = $('#navigation-bar');
    if ($('body').scrollTop() > 0) {
        if ($nav.data('size') == 'big') {
            $nav.data('size','small').stop().animate({
                height:'40px'
            }, 600);
        }
    } else {
        if ($nav.data('size') == 'small') {
            $nav.data('size','big').stop().animate({
                height:'100px'
            }, 600);
        }  
    }
});

这是来自问题 here

更新

基于bootstrap结构

我已经写好了代码。检查一下 jsFiddle

HTH.

关于html - 当用户滚动页面时降低导航栏的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23896660/

相关文章:

html - 输入打印时内部没有文本,但在屏幕上可见

javascript - 我需要无限的点击和转换不起作用

javascript - 处理 HTML Fieldset 的大小

css - Bootstrap 4 中的导航栏反转并切换为非事件状态

html - AngularJS 按需加载字体

html - 绝对垂直、水平 float 的 div 元素

css - 垂直对齐和伪元素

twitter-bootstrap - 如何使用 Bootstrap 3 或 4 - 16 & 24 网格系统

html - 使用 Bootstrap 类时无法解决问题

javascript - 基于外部数组Knockout JS的计算属性