jQuery Animate - 以固定速度将 DIV 移动到 X、Y 位置

jQuery Animate - Move DIV to X, Y position with a fixed speed

本文关键字:移动 位置 DIV Animate 速度 jQuery      更新时间:2023-09-26

我当前的jQuery代码将元素移动到页面上的X和Y位置,但是无论距离如何,我都想要恒定的速度。

例如,如果我移动一小段距离,时间会很慢。如果我移动到更远的距离,div 会很快射到该位置,这不是我想要的,但我不确定如何改变这一点。

$("#myAvatar").offset({ top: y, left: x})

我正在使用上面的代码,很想看看无论元素移动的距离如何,如何保持固定的速度。

对不起,如果我含糊不清或这个问题难以理解,将很乐意澄清。

编辑**

CSS是

transition: left 1.2s cubic-bezier(.42,-0.3,.78,1.25), top 1.2s cubic-bezier(.42,-0.3,.78,1.25);

过渡速度,1.2s是我应该在这里修复的。我不确定如何在JavaScript/jQuery中动态调整它以实现相同的速度,无论X和Y点之间的距离如何。

如果你

想要恒定的速度,那么使用"线性"而不是"立方贝塞尔(..)"。

你可以使用 .animate()

$("#myAvatar").animate({ top: y, left: x},1200);
1200 只是一个持续时间,

您可以使用您喜欢的持续时间进行更改,但 1200 = 1.2 秒,您在 CSS 中拥有