时间:2021-07-01 10:21:17 帮助过:27人阅读
如何实现平滑滚动
JavaScript的代码如下
$(function(){ $('a[href^="#"]').click(function(){ var speed = 500; var href= $(this).attr("href"); var target = $(href == "#" || href == "" ? 'html' : href); var position = target.offset().top; $("html, body").animate({scrollTop:position}, speed, "swing"); return false; }); });
上述代码可以实现平滑滚动,你可以通过改变“speed”来更改滚动速度,另外,通过最后返回“false”,我们尽量不影响URL。
由于WordPress与“$”冲突,我们将“$”更改为“jQuery”,下面我们使用jQuery的动画标签来实现平滑滚动。
我们来看具体的示例
代码如下
HTML代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" href="sample.css" type="text/css"> <script type="text/javascript" src="http://code.jquery.com/jquery-3.3.1.min.js"></script> <script> $(function(){ $('a[href^="#"]').click(function() { var speed = 400; var href= $(this).attr("href"); var target = $(href == "#" || href == "" ? 'html' : href); var position = target.offset().top; $('body,html').animate({scrollTop:position}, speed, 'swing'); return false; }); }); </script> <title>jQuery</title> </head> <body> <h1 id="index">目录</h1> <ul> <li><a href="#1">sample1</a></li> <li><a href="#2">sample2</a></li> <li><a href="#3">sample3</a></li> <li><a href="#4">sample4</a></li> </ul> <div id="1"> <h2>sample1</h2> <a class="button" href="#index">Topへ</a> </div> <div id="2"> <h2>sample2</h2> <a class="button" href="#index">Topへ</a> </div> <div id="3"> <h2>sample3</h2> <a class="button" href="#index">Topへ</a> </div> <div id="4"> <h2>sample4</h2> <a class="button" href="#index">Topへ</a> </div> </body> </html>
CSS代码
div{ height: 1000px; }
运行结果如下:只截图了上面的部分,下面还有sample1、sample2、sample3、sample4。
以上就是如何使用jQuery实现页面的平滑滚动的详细内容,更多请关注Gxl网其它相关文章!