阻止a标签锚点跳转后url出现瞄点的解决办法

阻止a标签锚点跳转后url出现瞄点的解决办法

最近在弄一个目录导航,用到锚点链接,但是使用锚点后地址栏会出现锚点信息,强迫症的我折腾了一下,于是有了这篇博客

把原来a标签的href改为现在这样<a href="javascript:;" onclick="tz();">

然后再给onclick写一个JavaScript的方法来执行跳转;

比如

function tz(){
    //获取文档对象
    let el = document.documentElement;
    //获取目标要锚点跳转的div
	let st = document.getElementById('st');
    //将该div的高度赋给当前浏览的滚动条高度
	el.scrollTop = st.offsetTop;
}

这时候是否有疑问了?用onclick直接能解决的问题为啥要用a标签

当然也可以直接用onclick啦,Vue中直接用@click

这时候我们发现,完成上面这个方法后,页内跳转很生硬,像闪现了一样。

如果你需要缓动效果,在css文件中加入,大功告成!

html,body{
	scroll-behavior:smooth;
}

注意:此效果对Safari无效(未来如果有解决办法,继续更新本博客-2021/4/11)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值