javascript - 导航栏连接到链接标签?
问题描述
当页面加载时,我的导航栏连接到页面顶部的我的链接标签。
这就是我的意思:https ://prnt.sc/10vqn5e
它连接到顶部的字母:https ://prnt.sc/10vqncw
我的代码:
animelist.js (the file that makes the letters)
import React from 'react'
import { HashLink as Link } from 'react-router-hash-link'
import './animelist.scss'
const animelist = () => (
<div>
<div className="sectionListLink">
<Link to="#sectionA" className="sectionALink">A</Link>
<Link to="#sectionB" className="sectionBLink">B</Link>
<Link to="#sectionC" className="sectionCLink">C</Link>
<Link to="#sectionD" className="sectionDLink">D</Link>
<Link to="#sectionE" className="sectionELink">E</Link>
<Link to="#sectionF" className="sectionFLink">F</Link>
<Link to="#sectionG" className="sectionGLink">G</Link>
<Link to="#sectionH" className="sectionHLink">H</Link>
<Link to="#sectionI" className="sectionILink">I</Link>
<Link to="#sectionJ" className="sectionJLink">J</Link>
<Link to="#sectionK" className="sectionKLink">K</Link>
<Link to="#sectionL" className="sectionLLink">L</Link>
<Link to="#sectionM" className="sectionMLink">M</Link>
<Link to="#sectionN" className="sectionNLink">N</Link>
<Link to="#sectionO" className="sectionOLink">O</Link>
<Link to="#sectionP" className="sectionPLink">P</Link>
<Link to="#sectionQ" className="sectionQLink">Q</Link>
<Link to="#sectionR" className="sectionRLink">R</Link>
<Link to="#sectionS" className="sectionSLink">S</Link>
<Link to="#sectionT" className="sectionTLink">T</Link>
<Link to="#sectionU" className="sectionULink">U</Link>
<Link to="#sectionV" className="sectionVLink">V</Link>
<Link to="#sectionW" className="sectionWLink">W</Link>
<Link to="#sectionX" className="sectionXLink">X</Link>
<Link to="#sectionY" className="sectionYLink">Y</Link>
<Link to="#sectionZ" className="sectionZLink">Z</Link>
</div>
</div>
)
export default animelist
header.js (the file that has the navbar stuff)
import React, { Fragment } from 'react'
import { Navbar, Nav } from 'react-bootstrap'
import './Header.scss'
const alwaysOptions = (
<Fragment>
<Nav.Link href="#/" className="btn btn-light">Home</Nav.Link>
<Nav.Link href="#/Anime-list" className="btn btn-warning">Anime List</Nav.Link>
<Nav.Link href="https://notReal.com" target='_blank' rel="noopener noreferrer" className="btn btn-danger">Cartoons</Nav.Link>
</Fragment>
)
const Header = ({ user }) => (
<Navbar bg="dark" expand="md" id="navbar">
<Navbar.Brand href="#">
<h3 className="navbarTitle">Anime Stream</h3>
</Navbar.Brand>
<Navbar.Toggle aria-controls="basic-navbar-nav" />
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="ml-auto">
{ alwaysOptions }
</Nav>
</Navbar.Collapse>
</Navbar>
)
window.onscroll = function () { scrollFunction() }
const scrollFunction = () => {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById('navbar').style.top = '0'
} else {
document.getElementById('navbar').style.top = '0'
}
}
export default Header
只有在我向下滚动页面加载后它才会这样做,它就像一个常规的粘性导航栏。我不知道为什么会这样,也许是因为我创建粘性导航栏的方式?我什至尝试过不使用 hashLink 而只使用 Link 但在页面加载时它仍然会粘在字母上。
解决方案
推荐阅读
- html - 网格项目没有完全占据网格容器
- windows - 如何添加“在 Vim 中打开”上下文菜单条目以从 WSL Vim 编辑 Windows 中的文本文件
- javascript - 通过字符串访问局部范围的变量——除了 eval 之外的任何东西?
- php - 警告中的 npm 安装错误
- python - 计算有条件的唯一熊猫数据框
- c# - 从 MVC 网页检测并启动本地计算机上的 .exe 文件
- sql - 为一种信息源组合 SQL 表
- django - Django:如何自定义 AbstractUser 模型的默认添加页面
- c - 如何从不同的机器连接到 Zookeeper 服务器?
- android - 在android中几天后反向地理编码突然返回null