【发布时间】:2022-01-09 20:27:39
【问题描述】:
我正在尝试使用此代码更改导航栏的颜色。
const [navbarColor, setNavbarColor] = useState("navbar-transparent");
const [collapseOpen, setCollapseOpen] = useState(false);
useEffect(() => {
const updateNavbarColor = () => {
if (
document.documentElement.scrollTop > 399 ||
document.body.scrollTop > 399
) {
setNavbarColor("");
} else if (
document.documentElement.scrollTop < 400 ||
document.body.scrollTop < 400
) {
setNavbarColor("navbar-transparent");
}
};
window.addEventListener("scroll", updateNavbarColor);
return function cleanup() {
window.removeEventListener("scroll", updateNavbarColor);
};
});
这就是我制作导航栏的方式
<Navbar className={"fixed-top " + navbarColor} expand="lg" color="info">
但是,当我向下滚动网页时,虽然代码看起来不错,但网页崩溃了。
【问题讨论】:
标签: javascript html css reactjs vertical-scrolling