javascript - 使用 CSS 为左过渡动画提供更好的性能

标签 javascript css animation

这是我的:

.s2 {
  top: 150px;
  left: 20px;
  position: absolute;
  transition: left 300ms linear;
}

我使用 JavaScript 在滚动时动态更改左侧位置。目前,移动设备甚至桌面浏览器的性能都很差。

我该如何改进?对此有更好的方法吗?

最佳答案

  • 考虑使用 requestAnimationFrame 限制滚动

  • 如果可以,请使用 translate 等属性,而不是 left 或 top

  • 广告 translateZ(0) 或 translate3d(0,0,0) 以在移动设备上触发 GPU(并不总是保证)

此外,由于您在滚动期间设置动画,因此您不需要使用过渡属性,除非您在滚动量超过特定值时设置属性的断点/阈值。

关于javascript - 使用 CSS 为左过渡动画提供更好的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51682284/

相关文章:

javascript - 我如何在 Next.js 中删除 ID 为 ="__next"的 div

javascript - 在 Node.js 中使用 ES Module 系统时,是否可以使用相同的导入语法导入所有 Node 包?

html - 如何在 Ruby on Rails 中添加背景图片

css - 溢出 : hidden; not working on image inside grid

javascript - 使用 Ember.js 临时将 CSS 类添加到 DOM 元素

CSS3 折叠与延迟一起工作

javascript - 使用 velocity.js 时是否可以对动画进行排队?

javascript - Form.serialize() 似乎返回 null

javascript - Vanilla javascript 函数仅输入数字,如果不内联调用则不起作用

html - 宽度问题 :50% when border ! = 无 (CSS)