2012-01-05 34 views
2

我看过所有类似的问题,但没有一个看起来适合我的问题,所以我决定在这里提出一个。提高jQuery的性能,预加载,动画和多少太多?

我在网站上有一个照片库页面。它管理大约100个图像。它工作得很好。但是,我对TQM(全面质量管理)和Kai Zen(永不完美,所以经常改进)感兴趣。在这些方面,我有一些问题:

  1. 多少动画在一个页面上动画太多?如果用户使用该页面时没有滞后,这是否意味着动画可以保留?

  2. 预加载多少预加载太多?我正在使用JavaScript和jQuery在页面加载时缓存图像。它只缓存其中的一部分,其他部分则在用户导航时加载。我应该关心在客户端使用图像接管多少内存?我应该一次全部预加载,还是在用户导航时?如果没有滞后,我应该改变机制的工作方式吗?

对不起了很多,没有代码的问题,但这些都属于这一制度的实施,将极大地帮助我做一些出版前我的迭代。提前致谢。

回答

3

我认为这里的答案可能有点主观。

我会说,就动画而言 - 有两件事会阻止我添加更多的东西 - 一种是当它开始时如果一切都在同时触发时看起来不稳定/波涛汹涌(但想到用户 - 你可能有一台带有现代硬件加速浏览器的高端个人电脑,但他们可能不会)。

然而,在那之前,我会看着页面,看看我觉得有多恼人 - 有太多的东西,像动画一样,像很多事情一样,你会发现越少越好。

对于第二个问题 - 缓存在哪里是明智的。不要担心内存,因为客户端会处理该内存,但担心页面加载速度。如果您的页面未在合理的时间(几秒钟)内加载并准备好使用,请考虑预加载量较少并按需执行更多操作,因为用户体验是关键。一个缓慢的网站是一个未读的网站。

+0

谢谢您的回复Codecraft。没有太多的动画,菜单系统在打开时动画,有一个小时钟,当相册被洗牌时,有一个专辑封面的动画。 – 2012-01-05 18:55:43

+0

至于预加载,它的预加载速度非常快,但有时需要的东西有时会显示图像在屏幕上的加载。这是否意味着我应该在开始时预加载入更多? – 2012-01-05 18:56:14

2

这真的很依赖你的目标平台和浏览器...

  1. jQuery的动画,动画时间/迭代和参与会比动画的一些其他的另一个因素财产。我会说:

    • jQuery动画是适用于桌面几个人,除非没有太多JS代码占用JS线程 - 检查CPU使用率。 (短,非循环,简单的动画不会推CPU太用力)
    • jQuery的动画是移动平台不行,你应该使用CSS3动画insteads
  2. 避免加载/预加载太多一次使用CPU资源和图像预加载作为网络连接的图像将占用一定量的RAM。
    (取决于你的图像和用户内存的大小 - 除非这是非常旧的机器或移动设备,或者它是大图像,例如2048x1024,大多数现代桌面都可以)。
    预先逐页加载将是一个合理的方法。我的建议不到10,尤其是你有其他Ajax请求,你可能没有火箭快速服务器,所以你的加载将仍然是合理的。

+0

jQuery动画实际上适用于我的iPhone和Android :)什么是CSS3动画? – 2012-01-05 19:01:35

+0

我只是预加载1000x700的图像,以便用户不那么难。我也只在开始时预加载约7张图像,并允许其他人在导航时加载。感谢您的答复! – 2012-01-05 19:02:35

+0

@TravisJ 1.某些类型的jQuery动画会让您的手机变慢。他们工作,但不像桌面一样流畅。 2. 1000x700 x 7开始时可以,但用户是否可以继续在同一页面上加载?当iphone上的页面超过60个时,这可能会有问题。 (甚至30,取决于内存和连接状态) – vincicat 2012-01-05 19:12:50