我担心网站加载时间的一个小问题。
目前我正在一个网站上工作,该网站在同一页面上有 200 多个产品图片(有一个 jQuery 过滤器使用,使它们根据过滤器进行过滤),我不确定是最好的方法,因为页面需要时间加载和图像可能会破坏或减慢浏览器。
另一方面,我认为在加载所有图像之前,“加载页面”或某种 jQuery 可能是一个很好的解决方案。
(此外,还有一个障碍,因为图像针对平板电脑(不是视网膜)进行了优化,因此图像可能比计算机屏幕上的正常显示更大)。
有什么解决办法吗?
有两种常见的解决方案。
您可以一次加载大约一页图像,并具有 Next 和 Prev 按钮。测量用户在一个页面上的平均时间,然后在该时间左右开始加载第二个页面。一旦他们单击按钮,您就可以淡出当前页面,并淡入下一个页面。
优点:
缺点:
有许多插件允许“无限滚动”。基本上,您到达页面底部,它会从您的服务器加载更多图像。
优点:
缺点:
我开始研究一个插件来优雅地处理无限滚动。目前,它比我见过的其他解决方案略好。
用法:
为您的图像创建模板
<span id="imageTemplate">
<img src="" alt="my image"/>
</span>
添加一些图像
var images = ['img/img0001', 'img/img...'];
您可能会使用循环。例如
for (var i=0; i<1000; i++) {
var padding = "0000".slice(i.toString().length);
images.push(["img/kitten", padding, i].join(""));
}
使用您的插件初始化插件
var $imageTemplate = $('#imageTemplate');
$imageTemplate.inteliscroll.addImages(images);
$imageTemplate.inteliscroll();
滚动
我的待办事项清单: