设置锚点,实现点击自动定位到页面指定位置的效果

本文介绍了如何在前端实现点击页面元素自动跳转到页面指定位置的效果。详细讲解了通过location.href、Element.scrollIntoView()以及CSS的scroll-behavior属性三种方法,并提供了具体的实现示例,包括在Vue.js中的应用。同时,还提及了文本框聚焦时的页面定位技巧。
摘要由CSDN通过智能技术生成

场景

有页面如下:
左边是需要聚焦的内容,右边内容可点击。点击右侧内容,左侧自动聚焦到对应位置。

类似于通讯录,点击首字母聚焦到人名,这样的效果。

实现方法

1. location.href

  • 类似a标签的href,不同的是它可以用js控制,也不局限于标签类型
  • 缺点: 不能设置动画效果,可能会改变url和现有路由冲突

2. Element.scrollIntoView()

  • IE6浏览器也支持的原生JS API,可通过behavior属性实现平滑滚动定位
  • 语法:
    • element.scrollIntoView()
      等同于element.scrollIntoView(true)元素的顶端将和其所在滚动区的可视区域的顶端对齐;false 反之。

    • element.scrollIntoView({behavior, block, inline})

      behavior 可选 定义动画过渡效果, 'auto''smooth'

      block 可选 定义垂直方向的对齐, 'start', 'center', 'end', 'nearest'

      inline 可选 定义水平方向的对齐, 'start', 'center', 'end', 'nearest'

  • 具体看MDN文档

3. scroll-behavior<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值