锚点链接和平滑滚动到指定位置

本文介绍了一种通过URL参数传递数据并在目标页面实现平滑滚动至指定位置的方法。利用简单的JavaScript正则表达式从URL中提取参数,并通过jQuery实现滚动效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天遇到一个要跳转到别的页面的固定区域的问题,想过把第一个页面的参数存入cookie,在下一个页面在取出用,但这样就有点麻烦了......

请教了同事,换了一种思路。

先给跳转的的a标签加了参数(如果直接锚点可以写成xx.html + # + id

xx.html+?+参数(这里用的)


这个方法是获得页面url的某个url参数的方法

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");

这个正则是寻找&+url参数名字=值+&
&可以不存在。
var r = window.location.search.substr(1).match(reg);
if (r!=null) return unescape(r[2]); return null;

这里是开始匹配,找到了返回对应url值,没找到返回null。



上面第二个是一个加载程序,获取到about的参数,传到goAnchor(id) ,执行平滑滚动id相对应的位置。srcollTop的id要写成拼接的$("#about_"+id),so...相应位置id为#about_1,#about_2...


写在题外话:

以前总以为这一步需要后端做,自己没有仔细查,或者说查了也没好好弄懂,人啊,还得在工作中发现问题,吃透问题,才能进步。

ps:也许上面讲的有些不清楚,可以留言讨论,或者多查一些相互印证!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值