欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery实现锚点向下平滑滚动特效示例

程序员文章站 2022-11-26 12:34:38
实现效果: 实现原理: 使用jquery animate()方法实现页面平滑滚动特效 $('html, body').animate({ scrollt...

实现效果:

jQuery实现锚点向下平滑滚动特效示例

实现原理:

使用jquery animate()方法实现页面平滑滚动特效

$('html, body').animate({
scrolltop: $(hash).offset().top
}, 800, function(){
window.location.hash = hash;
});

简单实例代码:

<!doctype html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
 // add smooth scrolling to all links
 $("a").on('click', function(event) {
 
  // make sure this.hash has a value before overriding default behavior
  if (this.hash !== "") {
   // prevent default anchor click behavior
   event.preventdefault();
 
   // store hash
   var hash = this.hash;
 
   // using jquery's animate() method to add smooth page scroll
   // the optional number (800) specifies the number of milliseconds it takes to scroll to the specified area
   $('html, body').animate({
    scrolltop: $(hash).offset().top
   }, 800, function(){
  
    // add hash (#) to url when done scrolling (default click behavior)
    window.location.hash = hash;
   });
  } // end if
 });
});
</script>
 <style>
body, html, .main {
  height: 100%;
}
 
section {
  min-height: 100%;
}
</style>
</head>
<body>
<a href="#section2" rel="external nofollow" style="
   font-size: 30px;
   font-weight: bold;
   text-align: center;
">点击此处平滑滚动到第二部分</a>
<div class="main">
 <section></section>
</div>
<div class="main" id="section2">
 <section style="
   background-color: #03c03c;
   color: #fff;
   font-size: 30px;
   text-align: center">
   section 2
 </section>
</div>
</body>
</html>

以上这篇jquery实现锚点向下平滑滚动特效示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。