javascript - 如何使用 CSS 或 Javascript 为您的网站添加平滑滚动?
问题描述
每次单击导航栏中的链接时,我都需要添加平滑的滚动效果。这是导航栏:
<header class="navbar">
<div class="navElements">
<div class="logo">
<img src="./logo.png" alt="Millennium" />
</div>
<div class="hamburger">
<input type="checkbox" id="check" />
<label for="check" class="checkButton">
<i class="fas fa-bars" style="font-size: 35px"></i>
</label>
</div>
</div>
<div>
<ul class="navItems">
<li><a href="#home" class="navItem active">HOME</a></li>
<li><a href="#services" class="navItem">SERVICES</a></li>
<li><a href="#projects" class="navItem">PROJECTS</a></li>
<li><a href="#ourTeam" class="navItem">OUR TEAM</a></li>
<li><a href="#contact" class="navItem">CONTACT</a></li>
</ul>
</div>
</header>
我需要添加什么?和哪个班?我已经为id
每个section
body
<div id="home">Stuff</div>
<div id="services">Stuff</div>
<div id="projects">Stuff</div>
<div id="ourTeam">Stuff</div>
<div id="contacts">Stuff</div>
帮帮我...
解决方案
您需要Html, body
像这样为 Try 设置动画,希望它有效!
HTML 链接:
<a href="#yourId" class="scrollTo">Learn More</a>
JS:
$(".scrollTo").on('click', function(e) {
e.preventDefault();
var target = $(this).attr('href');
$('html, body').animate({
scrollTop: ($(target).offset().top)
}, 2000);
});
HTML 锚点:
<div id="yourId">My content here</div>
推荐阅读
- android - Admob Adreward 加载失败,错误代码 0
- java - 你知道 Java 8 格式化程序将链式调用放在单独的行中吗?
- angular - 如何从另一个 [Angular] 调用一个组件的方法
- javascript - 我怎样才能制作一个水平的,两个方向,(好像身体是一个 360 度水平面),用 javascript 滚动身体?
- angular - 单选输入和同时输入的默认值
- javascript - 我的蜘蛛网周围有一个奇怪的圆圈,我该如何解决?
- regex - 使用颤振飞镖从字符串中提取 JSON
- sublimetext3 - 如何告诉 sublime-text 语法荧光笔捕获单引号和双引号?
- c - 定点数的乘法
- windows-installer - Office 2019 和 VSTO 运行时