zoukankan      html  css  js  c++  java
  • 【前端】jQuery实现锚点向下平滑滚动特效

    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" 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>
    

      

  • 相关阅读:
    委托
    队列和栈、泛型
    Java去除字符串中 除数字和逗号以外的符号
    SQL查询重复记录
    使用EasyExcel导出图片及异常处理
    Nacos开机自启
    Redis开机自启
    Nginx开机自启
    Java 向数组中添加元素
    Java:如何打印整个字符串数组?
  • 原文地址:https://www.cnblogs.com/dragonir/p/7446326.html
Copyright © 2011-2022 走看看