哪种4种滚动吸顶方式在性能与实用性上各有何优劣?

更新于
2026-10-01 17:07:58
0阅读来源:SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2486个文字,预计阅读时间需要10分钟。

哪种4种滚动吸顶方式在性能与实用性上各有何优劣?

前言:我入职第二家公司的第一个需求就是修复之前外包做的滚动吸顶效果。当时我非常纳闷,为什么一个滚动吸顶会有bug。后来查看代码才发现,直接使用的是offsetTop这个属性,而且并没有‘。

前言

我入职第二家公司接到的第一个需求就是修复之前外包做的滚动吸顶效果。我当时很纳闷为何一个滚动吸顶会有 bug,后来我查看代码才发现直接用的是 offsetTop 这个属性,而且并没有做兼容性处理。

offsetTop

用于获得当前元素到定位父级( element.offsetParent )顶部的距离(偏移值)。

定位父级 offsetParent 的定义是:与当前元素最近的 position != static 的父级元素。

或许写这个代码的人没有注意到“定位父级”这个这个附属条件。
后来在项目中总会遇到滚动吸顶的效果需要实现,现在我将我知道的 4 种滚动吸顶实现方式做详细介绍。

目录

  1. 使用 position:sticky 实现
  2. 使用 JQuery 的 offset().top 实现
  3. 使用原生的 offsetTop 实现
  4. 使用 obj.getBoundingClientRect().top 实现

望给个 star 支持一下。

阅读全文

本文共计2486个文字,预计阅读时间需要10分钟。

哪种4种滚动吸顶方式在性能与实用性上各有何优劣?

前言:我入职第二家公司的第一个需求就是修复之前外包做的滚动吸顶效果。当时我非常纳闷,为什么一个滚动吸顶会有bug。后来查看代码才发现,直接使用的是offsetTop这个属性,而且并没有‘。

前言

我入职第二家公司接到的第一个需求就是修复之前外包做的滚动吸顶效果。我当时很纳闷为何一个滚动吸顶会有 bug,后来我查看代码才发现直接用的是 offsetTop 这个属性,而且并没有做兼容性处理。

offsetTop

用于获得当前元素到定位父级( element.offsetParent )顶部的距离(偏移值)。

定位父级 offsetParent 的定义是:与当前元素最近的 position != static 的父级元素。

或许写这个代码的人没有注意到“定位父级”这个这个附属条件。
后来在项目中总会遇到滚动吸顶的效果需要实现,现在我将我知道的 4 种滚动吸顶实现方式做详细介绍。

目录

  1. 使用 position:sticky 实现
  2. 使用 JQuery 的 offset().top 实现
  3. 使用原生的 offsetTop 实现
  4. 使用 obj.getBoundingClientRect().top 实现

望给个 star 支持一下。

阅读全文