如何调整Framer Motion中可拖拽元素的动量/惯性?
调整Framer Motion拖拽释放后的动量(不回弹回原点)
你可以用以下两个属性来精准控制拖拽释放后的动量:
dragMomentum:这个属性直接控制拖拽释放后的动量大小,默认值为true(等价于1)。你可以设置一个小于1的小数来减小动量,比如0.2,数值越小,释放后元素滑动的距离越短、停下得越快;设为0则完全没有动量,释放后立刻停止。dragElastic:虽然它主要控制拖拽过程中的弹性,但也会影响释放后的运动衰减。设为0时,拖拽没有弹性,释放后元素会快速停下;如果需要保留轻微的拖拽弹性,可设为0.1这类小值。
注意:要确保元素不会回弹到原点,不要设置dragSnapToOrigin(默认值就是false,无需额外修改),bounceStiffness和bounceDamping确实是控制回弹行为的,你可以忽略这两个属性。
示例代码:
<motion.div drag dragMomentum={0.2} dragElastic={0} > {child} </motion.div>
内容的提问来源于stack exchange,提问作者Stuart M
相关产品推荐
相关产品推荐

