我正在重新设计我的网站,并一直在研究使用JavaScript和jQuery。以下是我到目前为止:http://www.tedwinder.co.uk/gallery2/。
我的愿景是将所有照片放在一个页面上,用户可以像现在一样滚动浏览。但是,我理解在一个页面上有50多个大图像的限制和影响,并考虑使用无限滚动和延迟加载,我理解只会在用户到达时加载图像,或者当他们点击时“更多”链接?
所以,我的问题是:这会减少页面加载,我将如何实现无限滚动/延迟加载,这会有效地工作,还是你能想到更有效的方法吗?
谢谢, 泰德
答案 0 :(得分:12)
这是一个非常好的jQuery插件,可以处理图像延迟加载。
http://www.appelsiini.net/projects/lazyload
折叠下方的图像在滚动到视图之前不会被加载。
它会减少您网站的带宽,但如果您没有大量的流量,它就不会产生太大影响。
有关使用此技术的示例,请查看http://mashable.com/
答案 1 :(得分:4)
试试这个jQuery Lazy Scroll Loading插件 http://code.google.com/p/jquerylazyscrollloading/
答案 2 :(得分:3)
你可以试试我写的jQuery插件,它使用html注释来延迟加载任意位的html,包括图像:
jQuery Lazy Loader Plugin Page
以下是一个例子:
<pre class=”i-am-lazy” ><!–
<img src=”some.png” />
–></pre>
<pre class=”i-am-lazy” ><!–
<div>Any, html css img background, whatever. <img src=”some.png” /> </div>
–></pre>
<script type=”text/javascript” src=”jquery.lazyloader.js” ></script>
<script type=”text/javascript” >
$(document).ready( function()
{
$(’pre.i-am-lazy’).lazyLoad();
});
</script>
所以基本上你用一个占位符标签和内部html注释来包装你想要延迟加载的内容。当占位符在视口中变为可见时,它将替换为注释中的html字符串。
您可以为占位符使用任何标记,但我喜欢pre,因为当内部只有注释时它会呈现为0维。
希望这有帮助! @MW_Collins
答案 3 :(得分:0)
这是另外两个执行延迟加载/无限滚动的JQuery插件:
http://www.infinite-scroll.com/infinite-scroll-jquery-plugin/