新版Lazyload?

时间:2011-06-17 08:01:02

标签: jquery lazy-loading lazy-evaluation

有没有人知道另一个插件而不是Applesiini的Lazyload? http://www.appelsiini.net/projects/lazyload

他们已停止使用它,因此它在新浏览器中不起作用。我正在寻找替代方案。

我需要它做的只是在用户滚动到它之前不加载图像(但代码已经加载,因此没有Ajax加载新内容)。如果您认为编程很容易,我欢迎任何帮助。

感谢。

3 个答案:

答案 0 :(得分:1)

我决定试一试。从lazyload项目中借用了视口内检测,并最终通过使用rel属性指定图像的URL来使其正常工作。

必须使用visiblity: hidden代替display: none才能检测元素的位置,然后执行hide,删除visibility样式并使用{设置动画{1}}。

您可以通过将函数传递给fadeIn选项来为其设置动画。

查看此test case on jsFiddle

答案 1 :(得分:1)

您可能想再次检查插件页面。它最近已更新。特别是demo page which uses scrollstop event。默认情况下不提供此事件。代码摘自James Padolseys优秀的special scroll events for jQuery文章。

答案 2 :(得分:0)

当页面滚动浏览特定元素时,使用此jQuery代码启动Ajax调用:

$("body").bind("scroll touchstart touchend",function(){
    if($("body").scrollTop()>=$("#something").offset().top){
        alert("Put an Ajax call here...");
    }
});

只需将#something替换为要延迟加载的元素上方元素的jQuery选择器。

广告@米