我曾经发过另一个关于这个问题的帖子,但它没有得到解决,可能是因为我的问题表述不够清晰。
现在我想再试一次,希望能够更接近解决这个问题:
最近,我被指派创建一个单页网站,模拟基本的Flash动画效果,例如元素的滑入和淡入淡出。
当我得到一个交互式模型后,我遇到了一个大问题——动画效果很卡顿。无论在Mac上使用什么浏览器,只要屏幕大小超过18英寸,这个问题都存在;而在小于18英寸的Mac上,只有Firefox版本3及以下才会遇到这个问题。在PC上,动画效果几乎完美。
这里是我的jQuery代码,受影响的元素带有id #md1、#md2和#md3:
$(document).ready(function () {
$('#md1').animate({ top: "-60px" }, 500);
$('#md2').animate({ top: "60px" }, 800);
$('#md3').animate({ left: "60px" }, 1000);
$('.home').fadeTo(3000, 0.8);
$('#bg-img-4').fadeTo(1200, 1);
$('#menu').fadeTo(4000, 1);
$('#copyright').fadeTo(4000, 1);
});
我已经尝试了各种优化方法,包括在索引页面上缓存受影响div中的图像,并在稍后将用户重定向到实际页面,以及排队动画,但什么都没有起作用。
这真的很令人沮丧,因为我似乎已经尽了自己所知道的所有可用方法,但是我就是无法让它在Mac上正常运行。
我有一种直觉,那就是在文档准备好时编译了太多的动画,这导致了运行缓慢-有人能否确认这是主要原因,并且是否有其他方法可以解决这个问题?
非常感谢大家的帮助。非常感激 =)