在图库上慢滚动

时间:2012-08-01 17:20:42

标签: javascript jquery html optimization

我有一个图片库,除了一个问题。画廊页面的滚动相当滞后和缓慢。我一开始以为它只是这台电脑或浏览器,但它在拥有10倍图像的Facebook画廊上行动起来并不慢。

页面加载后应该没有更多的javascript执行,所以我无法想象这是导致问题的我的jQuery,但它可能是。有没有办法告诉使用谷歌的开发人员工具检查员或Firefox firebug,如果有任何时间javascript执行?我设置断点并运行代码,最终它停止,我不能再进入任何更多的功能。因此让我认为它不是jQuery。

检查网络日志,我只是拉入 2.37MB 的图像和资源(这是在我清除缓存后,所以每个图像都是全新加载的),所以我不认为它纯粹的图像尺寸。

最后,我甚至检查了我的任务管理器CPU和内存使用情况,当我在该页面时它没有出现尖峰,因此我认为它不会出现任何类型的无限循环或内存问题。

具有滞后滚动的页面:Gallery

1 个答案:

答案 0 :(得分:1)

EDIT2:您可以尝试实现图像精灵,但我真的wouldn't recommend it就是这种情况。

http://www.w3schools.com/css/css_image_sprites.asp

或者你可以使用Photoshop增加每个图像的图像优化。(建议你这样做,如果你还没有。)......或像http://kraken.io/这样的在线图像优化器


编辑:您可以通过确保所有Javascript被引用为外部文件来大大提高速度,删除您拥有的嵌入式JavaScript。将所有javascript从您拥有它的最顶层移到...之前...

</body>

如果可能的话,将所有javascript文件尽可能少地合并到minify


...... http://analyze.websiteoptimization.com/

的一些可能的改进

分析和建议

TOTAL_HTML - 恭喜,此页面上的HTML文件总数(包括主HTML文件)为1,大多数浏览器都可以进行多线程处理。最小化HTTP请求是网站优化的关键。

TOTAL_OBJECTS - 警告!此页面上的对象总数为41,其数量将主导网页延迟。考虑将其减少到更合理的数量。每页超过20个对象,处理实际对象(描述时间和等待时间)的开销占整个页面延迟的80%以上。请参阅图II-3:延迟组件的相对分布,显示对象开销主导网站优化秘密中的网页延迟,以获取有关对象开销如何控制网页延迟的更多详细信息。组合,优化和优化外部对象。使用CSS翻转替换图形翻转以加速显示并最小化HTTP请求。考虑使用CSS sprites来帮助巩固装饰图像。使用CSS技术(如彩色背景,边框或间距)而不是图形技术可以减少HTTP请求。用CSS文本标题替换图形文本标题以进一步减少HTTP请求。最后,考虑使用不同的主机名或CDN来优化并行下载,以减少对象开销。

TOTAL_IMAGES - 警告!此页面上的图像总数为32,请考虑将其减少到更合理的数量。建议组合,替换和优化您的图形。使用CSS翻转菜单替换图形翻转菜单,以加快显示速度并最大限度地减少HTTP请求。考虑使用CSS sprites来帮助巩固装饰图像。使用CSS技术(如彩色背景,边框或间距)而不是图形技术来减少HTTP请求。用CSS文本标题替换图形文本标题以进一步减少HTTP请求。最后,考虑使用不同的主机名来优化并行下载,以减少对象开销。

TOTAL_CSS - 小心。此页面上的外部CSS文件总数为3,请考虑将其减少到更合理的数量。由于外部CSS文件必须位于HTML文档的HEAD中,因此必须先在任何BODY内容显示之前加载它们。虽然它们是在后续请求中缓存的,但CSS文件会减慢页面的初始显示速度。组合,优化和优化外部CSS文件。理想情况下,您应该在页面上拥有一个(甚至为高流量页面嵌入CSS)。您可以使用速记属性优化CSS文件,分组,然后缩小,GZIP压缩它们以减少它们的占用空间。请记住将CSS文件放在BODY末尾的HEAD和JavaScript文件中以启用渐进式显示。

TOTAL_SIZE - 警告!此页面的总大小为2987624字节,在56Kbps调制解调器上将加载603.63秒。考虑将总页面大小减少到小于100K,以在56K连接上实现低于20秒的响应时间。即使有反馈,超过100K的页面也会超过56Kbps的大多数注意力阈值。考虑使用网站优化秘密,加快您的网站优化您的网站或联系我们有关我们的优化服务。 TOTAL_SCRIPT - 小心。此页面上的外部脚本文件总数为5,请考虑将其减少为一个或两个。结合,重构和缩小以优化您的JavaScript文件。理想情况下,您应该在页面上拥有一个(甚至可以为高流量页面嵌入脚本)。考虑在服务器上一起缝合JavaScript文件以最小化HTTP请求。将外部JavaScript文件放置在BODY的底部,HEAD中的CSS文件可以在XHTML网页中逐行显示。

HTML_SIZE - 恭喜,此HTML文件的总大小为1472字节,小于50K。假设您指定图像的高度和宽度,此大小允许HTML在10秒内显示内容,即用户愿意等待页面无需反馈即可显示的平均时间。 IMAGES_SIZE - 警告!图像的总大小为2900543字节,超过100K。考虑切换图形格式以实现较小的文件大小(例如,从JPEG到PNG)。最后,用CSS技术替代图形技术来创建彩色边框,背景和间距。 SCRIPT_SIZE - 警告!外部脚本的总大小为65770字节,超过20K。考虑优化JavaScript的大小,组合它们,并在适当的情况下使用HTTP压缩来放置文档HEAD中的任何脚本。您可以将CSS菜单替换为基于JavaScript的菜单,以最大限度地减少甚至消除JavaScript的使用。

CSS_SIZE - 小心。外部CSS的总大小为19839字节,大于8K且小于20K。对于外部文件,理想情况下保持它们小于1160字节以适合一个更高速的TCP-IP数据包(或其近似倍数)。考虑优化CSS并消除功能以将其减小到更合理的大小。 MULTIM_SIZE - 恭喜,所有外部多媒体文件的总大小为0字节,小于10K。