gpt4 book ai didi

iPhone 上的 JavaScript 动画滞后

转载 作者:行者123 更新时间:2023-11-30 06:02:41 24 4
gpt4 key购买 nike

我不知道为什么,但我的动画在 chrome 上运行良好但在 iPhone 上滞后。我正在使用 jQuery 来简化工作并具有以下功能。

function slideLeftTo(to, after) {
var page = $(to);
var current = $(".current");

if (page.length < 1) return;
if (current.length < 1) return;

if (page.attr("id") == current.attr("id")) return;

var endX = current.width();

page.css({ top: "0px", left: endX + "px", display: "block" });
current.css({ top: "0px", left: "0px" });

var x = endX;
var timer = setInterval(function() {
if (x < 0) {
x = 0;
clearInterval(timer);
}

page.css({ top: "0px", left: x + "px" });
current.css({ top: "0px", left: (x - endX) + "px" });

x -= 100;

if (x <= 0) {
after();
}
}, 50);
}

function slideRightTo(to, after) {
var page = $(to);
var current = $(".current");

if (page.length < 1) return;
if (current.length < 1) return;

if (page.attr("id") == current.attr("id")) return;

var endX = current.width();

page.css({ top: "0px", left: -endX + "px", display: "block" });
current.css({ top: "0px", left: "0px" });

var x = 0;
var timer = setInterval(function() {
if (x > endX) {
x = endX;
clearInterval(timer);
}

page.css({ top: "0px", left: (x - endX) + "px" });
current.css({ top: "0px", left: x + "px" });

x += 100;

if (x >= endX) {
after();
}
}, 50);
}

我可以简单地调用这些函数来工作,它们可以工作但滞后。我调用它们的方式是...

slideLeftTo('#div_id', function() {
console.log("It was animated!");
});

我知道您可以指出我的函数有什么问题。

最佳答案

我完全使用 CSS 动画解决了这个问题。我使用 translate3D 属性来做到这一点。

关于iPhone 上的 JavaScript 动画滞后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7217904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com