jQuery实现页面锚点滚动效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>animate锚点链接示例</title> <script type="text/javascript" src="http://cdn.staticfile.org/jquery/2.1.1-rc2/jquery.min.js"></script> <script type="text/javascript"> $(function(){ $('.first,.second,.third').click(function(){ var cl = $(this).attr('class'); $('#aaa').animate({scrollTop: $('.'+cl+'_content').offset().top-30}, 500); }) }) </script> </head> <body> <a href="javascript:;" class="first">第一章</a> <a href="javascript:;" class="second">第二章</a> <a href="javascript:;" class="third">第三章</a> <div id="aaa" style="width:600px;height:400px;overflow-y:scroll;"> <h4 class="first_content">第一章</h4> <div> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> 第一章节内容<br /> </div> <h4 class="second_content">第二章</h4> <div> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> 第二章节测试 链接查一查器<br /> </div> <h4 class="third_content">第三章</h4> <div> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> 第三章节 对代码进行修改<br /> </div> </div> <a href="javascript:;" class="first">第一章</a> <a href="javascript:;" class="second">第二章</a> <a href="javascript:;" class="third">第三章</a> </body> </html>
核心代码:$('html,body').animate({scrollTop: $('.'+cl+'_content').offset().top}, 1500);
让滚动条在指定时间内,滚动到指定元素的位置。
scrollTop 相对滚动条顶部的偏移
offset获取元素偏移量.top表示获取元素距离顶端的位置,.left表示获取元素距离左侧的位置