Javascript 为什么[我的]CSS3/jQuery转换如此不完美地平滑,我如何使它们更加平滑?

Javascript 为什么[我的]CSS3/jQuery转换如此不完美地平滑,我如何使它们更加平滑?,javascript,jquery,css,transition,Javascript,Jquery,Css,Transition,虽然我在互联网上搜索了很多关于这方面的信息,但我找不到任何关于这方面的信息,所以我来这里寻求帮助 一直困扰我的是:无论我使用哪种方法——jQuery.animate或css3转换,[我的]动画看起来都不是非常平滑的。我一开始不明白为什么他们会这样,这太微妙了,我最后不得不做一些视频封顶来证明这一点。但它肯定在那里——动画非常精彩。有时帧发生得太快,有时太慢 把它来回翻转六、七次,你就有希望看到我在说什么了 我可以通过jQuery理解这一点——JS执行并不完美。快速分析表明,实际上,在使用jQue

虽然我在互联网上搜索了很多关于这方面的信息,但我找不到任何关于这方面的信息,所以我来这里寻求帮助

一直困扰我的是:无论我使用哪种方法——jQuery.animate或css3转换,[我的]动画看起来都不是非常平滑的。我一开始不明白为什么他们会这样,这太微妙了,我最后不得不做一些视频封顶来证明这一点。但它肯定在那里——动画非常精彩。有时帧发生得太快,有时太慢

把它来回翻转六、七次,你就有希望看到我在说什么了

我可以通过jQuery理解这一点——JS执行并不完美。快速分析表明,实际上,在使用jQuery动画时,有些帧触发得太快,有些帧触发得太晚。但是CSS3呢


人们如何解决此问题?

在编写代码之前设置此JS:

jQuery.fx.interval = 100;

我使用jQuery的
左边距
CSS属性移动容器,并且非常平滑。使用箭头键使用它(左和右)


该项目的当前版本现在充满了图像、文本、iFrame,并且仍然平滑。

如果它只在Webkit上运行,并且有这样简单的动画,那么代码中就有一个bug。动画在其他浏览器上运行良好——这是我没有专门考虑FF的触发因素。在你做出这种快速判断之前,我会要求你仔细看看代码(动画功能只有几行)。网页的性能完全取决于你使用的浏览器、它的版本、你使用的机器以及同时运行的东西。我同意@powtac的说法,肯定有bug,否则就是你的代码没有优化。试着研究DOM操作如何影响性能,浏览器的JS基准测试,试着研究浏览器本身以及它们的功能。我想我会说我不是一个初学者,你们似乎都认为我是。我不确定是否有更友好的方式来表达这一点——这只是对单个DOM对象的单个属性操作,如果您阅读代码,就会看到这一点。我已经尝试过了——而且,这两者都不是帧速率问题(这是一个一致性问题——尽管提高帧速率可以减少对一致性问题的感知,但出于某种原因,我发现在这种情况下它并没有真正的帮助)这也不仅仅是一个jQuery问题。因此这有点帮助,但只是因为您使用的是EaseInOutExpo,这在某种程度上掩盖了效果。请使用像默认swing或EaseInOutQuart(我的首选)这样的函数在任何合理的“普通”机器上,缺陷都更加明显。顺便说一句,我在两台机器上进行了测试,当切换到EaseInOutQuart时,我看到了与您的代码相同的效果——动画不是完全平滑的,虽然它们令人满意,但也不是完美的。我确信我见过一些网站在不借助于快速移动技巧。他们怎么做?告诉我一个URL,我会告诉你。MeGuopad链接已经死了,从帖子中删除。请考虑再次更新它。这是7年前回答的,我不再有这样的文件;无论如何渲染已经走了很长的路,这个问题可能不再相关。(至少对于CSS3实现)。