JS tween如何改进?

发布于 2024-09-25 03:50:30 字数 276 浏览 5 评论 0原文

我正在尝试制作一个简单的博览会补间,它可以工作,但它有点紧张,FF 似乎有点挂起。我可以做什么来改善它?

var distance = (target - x) * dir;

x += (distance / 5) * dir;

if (dir == 1 && x >= target-1) {
    return;
    }

if (dir == -1 && x <= target+1) {
     return;
    }

Im trying to make a simple expo tween, it works, but its a bit jittery and FF seems to hang a bit. What can I do to improve it?

var distance = (target - x) * dir;

x += (distance / 5) * dir;

if (dir == 1 && x >= target-1) {
    return;
    }

if (dir == -1 && x <= target+1) {
     return;
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

不疑不惑不回忆 2024-10-02 03:50:30

您可能会找到答案以及更多信息,请查看 tween.js

所有补间曲线可视化 的源代码:
http://sole.github.com/tween.js/examples/03_graphs.html

You'll probably find your answer and more looking at the source of tween.js

All tween curves visualized:
http://sole.github.com/tween.js/examples/03_graphs.html

∞琼窗梦回ˉ 2024-10-02 03:50:30

Javascript 算术对于所有浏览器来说都足够快。尝试减少每次迭代更新的 DOM 节点数量。

Javascript arithmetic is fast enough for all browsers. Try reducing the amount of DOM nodes you update per iteration.

荒岛晴空 2024-10-02 03:50:30

我不太确定你在寻找什么,但这也许吗?

x += (target - x)*dir*dir/5;

if (Math.abs(dir) == 1 && dir*(x-target) <= 1)
    return;

I'm not quite sure what you're looking for, but this maybe?

x += (target - x)*dir*dir/5;

if (Math.abs(dir) == 1 && dir*(x-target) <= 1)
    return;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文