侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130555 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

页面锚点平滑滚动jQuery实现

2024-05-10 星期五 / 0 评论 / 0 点赞 / 7 阅读 / 2178 字

锚点链接默认都是直接跳转,缺乏平滑移动的效果,这段jq代码可以放在jq文件末尾作为函数调用,使得锚点移动变得平滑jQuery.fn.anchorGoWhere = function(options){

 锚点链接默认都是直接跳转,缺乏平滑移动的效果,这段jq代码可以放在jq文件末尾作为函数调用,使得锚点移动变得平滑

jQuery.fn.anchorGoWhere = function(options){     var obj = jQuery(this);     var defaults = {target:1, timer:1000};     var o = jQuery.extend(defaults,options);     obj.each(function(i){         jQuery(obj[i]).click(function(){             var _rel = jQuery(this).attr("href").substr(1);             switch(o.target){                 case 1:                      var _targetTop = jQuery("#"+_rel).offset().top;                     jQuery("html,body").animate({scrollTop:_targetTop},o.timer);                     break;                 case 2:                     var _targetLeft = jQuery("#"+_rel).offset().left;                     jQuery("html,body").animate({scrollLeft:_targetLeft},o.timer);                     break;             }             return false;         });                       }); };

 

调用的时候只需要在对应的链接a标签中执行该方法即可

<a href="#one" class="link">aaa</a>$(function(){    $('.link').anchorGoWhere();})

关于参数该方法有两个参数:target和timer

target为1是默认值,表示上下滑动,2是指左右滑动

timer是滑动速度,单位是毫秒,默认为1000

对应写法如下:

$(function(){    $('.link').anchorGoWhere({target:2, timer:3000});})

 

广告 广告

评论区