gpt4 book ai didi

jquery - 如何创建一个在滚动时跟随并添加 Logo 的导航栏?

转载 作者:行者123 更新时间:2023-12-01 07:20:31 25 4
gpt4 key购买 nike

如何重新创建像 Here 那样的导航栏

如果您在这里滚动,不仅导航栏会跟随您在顶部,而且公司的符号也会淡入导航栏中。

有人可以帮助或指导我正确的方向吗?

最佳答案

我创建了这个:

jsBin demo

jQuery:

var navPos = $('#nav').offset().top;

$(window).scroll(function(){

var fixIT = $(this).scrollTop() >= navPos;
var setPos = fixIT ? 'fixed' : 'relative' ;
var logoSH = fixIT ? 'show' : 'hide' ;


$('#nav').css({position: setPos});
$('#mini-logo')[logoSH](300);

});

HTML:

 <div id="header">

<h1>Company logo</h1>

<div id="navigation">
<ul id="nav">
<li id="mini-logo"><a href="#">LOGO</a></li>
<li><a href="#">PRODUCT</a></li>
<li><a href="#">RESOURCES</a></li>
<li><a href="#">CUSTOMERS</a></li>
<li><a href="#">SUPPORT</a></li>
<li><a href="#">COMPANY</a></li>
</ul>
</div>

</div>

CSS:

#header{
background:#eee;
}

#header h1{
padding:20px;
}

#navigation{
height:40px;
}
#nav{
position:relative;
top:0;
width:100%;
list-style:none;
background:#76A000;
height:40px;
}

#nav li{
float:left;
}
#nav a{
text-decoration:none;
display:block;
padding:10px 10px;
color:#fff;
}

#nav li#mini-logo{
display:none;
font-weight:bold;
}

技巧是获取 #nav 的位置,如果该位置小于 window scrollTop,则滚动页面执行某些操作。
为了实现这种平滑的效果,一旦我们将#nav的位置设置为固定以防止“跳跃”效果,您必须确保有一个替换元素。
该元素是 nav 的父级 #navigation,其高度与其子级相同。

关于jquery - 如何创建一个在滚动时跟随并添加 Logo 的导航栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14290788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com