gpt4 book ai didi

javascript - 粘性菜单 - 防止在页面刷新时加载

转载 作者:行者123 更新时间:2023-11-28 15:52:38 24 4
gpt4 key购买 nike

我在页面的下方使用了一个粘性菜单,这样当用户滚动到它时,它会粘在顶部。当用户向上滚动时,当您到达页面上粘性菜单所在的位置时,它将停止粘在顶部。

一切正常。唯一的问题是,如果有人在粘性菜单位于顶部时刷新页面,当您在页面上传递它时它不会取消粘性(无论您在哪里,它都会保持粘性)。

我可以做些什么来删除它吗?

var menu = document.querySelector('.menu-t')
var menuPosition = menu.getBoundingClientRect().top;
window.addEventListener('scroll', function () {
if (window.pageYOffset >= menuPosition) {
menu.style.position = 'fixed';
menu.style.top = '0px';
} else {
menu.style.position = 'static';
menu.style.top = '';
}
});
.page-section {
border-bottom: 1px solid #ddd;
overflow: hidden;
}

.page-section.page-section-center {
align-content: center;
text-align: center;
}


.menu-t {
margin: 0;
padding: 0;
width: 100%;
background-color: #FFF;
z-index: 1000;
border-bottom: 1px #eee dotted;
}
.menu-t li {
display: inline-block;
text-align: center;
padding: 20px;
text-transform: uppercase;
font-size: 14px;
}
.menu-t a {
display: block;
padding: 10px 0;
color: #32404E !important;
-webkit-transition: color ease 0.3s;
-o-transition: color ease 0.3s;
transition: color ease 0.3s;
}
.menu-t a:hover {
color: #2db2e9 !important;
}
<section class="page-section">
<br/>
<br/>
<br/>
<br/>
</section>
<section class="page-section page-section-center hidden-xs hidden-sm">
<ul class="menu-t">
<li>ITEM</li>
<li>
<a href="#" class="text-thick">What Is</a>
</li>
<li>
<a href="#" class="text-thick">How</a>
</li>
<li>
<a href="#" class="text-thick">You're In Good Company</a>
</li>
<li>ITEM</li>
</ul>
</section>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>

最佳答案

DOMContentLoaded eventListener 添加到您的 javascript。

document.addEventListener("DOMContentLoaded", function(event) {
var menu = document.querySelector('.menu-t')
var menuPosition = menu.getBoundingClientRect().top;
window.addEventListener('scroll', function () {
if (window.pageYOffset >= menuPosition) {
menu.style.position = 'fixed';
menu.style.top = '0px';
}
else {
menu.style.position = 'static';
menu.style.top = '';
}
});
});

关于javascript - 粘性菜单 - 防止在页面刷新时加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41615518/

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