jquery页面内锚点平滑跳转主要依靠jquery两个函数:javascript
scroolTop:$(selector).scrollTop(offset)scrollTop() 方法返回或设置匹配元素的滚动条的垂直位置。scroll top offset 指的是滚动条相对于其顶部的偏移。html
关键代码java
<script type="text/javascript"> $(document).ready(function() { $("#clicksource a").click(function() { var href=$(this).attr("href"); var pos= $(href).offset().top; $("html,body").animate({scrollTop:pos},9000); return false; } ); }); </script>
选中点击处href="#id",id值,经过动画处理,将该值对应元素位置以动画效果移到滚动条顶部。【语言表达能力实在糟糕,上参考例子吧】jquery
参考事例函数
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#clicksource a").click(function() { var href=$(this).attr("href"); var pos= $(href).offset().top; $("html,body").animate({scrollTop:pos},9000); return false; } ); }); </script> </head> <body> <div id="lrh">jump finished</div> <div>test1</div> <div>test</div> <div>test2</div> <div>test</div> <div>test3</div> <div>test</div> <div>test4</div> <div>test</div> <div>test5</div> <div>test</div> <div>test6</div> <div>test</div> <div>test</div> <div>test7</div> <div>test</div> <div>test8</div> <div>test</div> <div>test</div> <div>test9</div> <div>test1</div> <div>test</div> <div>test2</div> <div>test</div> <div>test3</div> <div>test</div> <div>test4</div> <div>test</div> <div>test5</div> <div>test</div> <div>test6</div> <div>test</div> <div>test</div> <div>test7</div> <div>test</div> <div>test8</div> <div>test</div> <div>test</div> <div>test9</div> <div id="clicksource"> <a href="#lrh">lrh</a> </div> </body> </html>