图片延迟加载和滑动翻页

一:预加载

首先,我们需要引用JS,

<script src="/Scripts/JQuery.LazyLoad.js"></script>

其次,修改img的格式为:

<img data-original="/images/img01.png" src="/images/grey.gif"><span>收藏</span></a>

注意,data-original中的path才是图片真是的地址,

最后,我们需要:

$(function () {
    $("img").lazyload({
        effect: "fadeIn"
    });
});

那么,问题来了,动态加载的图片是否也可以这么处理呢。原理上,是的,但是要注意,ajax动态加载的图片需要在 ajax 的success 中再次调用一遍上面的代码:

即类似:

复制代码
var getPreOrders = function () {
    $.ajax({
        type: "post",
        datatype: "json",
        url: "/PreOrder/GetTop10PreOrder",
        success: function (data) {
            if (data.F == 1) {
                alert(data.M);
                return;
            } 

            var con = "";
            $.each(data.O, function (i, item) {
                if (i > 3)
                    return; 

                con += "<li>";
                con += "    <a href=''>";
                con += "        <img data-original='" + item.ImgPath + "' src='/images/grey.gif' />";
                con += "        <div class='zhiziimg'>";
                con += "            <div class='dingtop'><h2>" + item.Company + "<span>" + TMinjiCommon.FormatTime(item.PublishTime) + "</span></h2></div>";
                con += "            <p>";
                con += item.OrderContent.substring(0, 20);
                con += "            </p>";
                con += "        </div>";
                con += "        <span class='sjx'></span>";
                con += "    </a>";
                con += "</li>";
            }); 

            $("#dingzhi").html(con);
            $("img").lazyload({
                effect: "fadeIn"
            });
            //alert(con);
        },
        error: function (xhr, status, err) {
            alert(err);
        }
    });
};
复制代码

why不解释。

 

二:滚动翻页

很简单,只要如下:

复制代码
$(window).scroll(function () {
    // 当滚动到最底部以上100像素时, 加载新内容  
    if ($(document).height() - $(this).scrollTop() - $(this).height() < 100)
    {
        //alert("xxx");
    }
    //loadMore();
});
复制代码
posted @   陆敏技  阅读(510)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
历史上的今天:
2013-08-28 Resharper的使用
Web Counter
Coupon for Contacts
点击右上角即可分享
微信分享提示