• jQuery实现的瀑布流效果, 向下滚动即时加载内容


    下拉滚动条或鼠标滚轮滚动到页面底部时, 动态即时加载新内容。

    后台用 json 传输数据, 示例程序中只写了示例数组。数据也只设置了两个属性, 需根据实际应用改写。
     
    页面用了 ul li 做为容器, 每个 li 表示一列
     
    <ul id="stage">  
        <li></li>  
        <li></li>  
        <li></li>  
        <li></li>  
    </ul>  
     
     
    JS代码
     
    /* 
    @版本日期: 版本日期: 2012年4月11日 
    @著作权所有: 1024 intelligence ( http://www.1024i.com ) 
     
    获得使用本类库的许可, 您必须保留著作权声明信息. 
    报告漏洞,意见或建议, 请联系 Lou Barnes(iua1024@gmail.com) 
    */  
    $(document).ready(function(){  
        loadMore();  
    });   
      
    $(window).scroll(function(){  
        // 当滚动到最底部以上100像素时, 加载新内容  
        if ($(document).height() - $(this).scrollTop() - $(this).height()<100) loadMore();  
    });  
      
      
    function loadMore()  
    {  
        $.ajax({  
            url : 'data.php',  
            dataType : 'json',  
            success : function(json)  
            {  
                if(typeof json == 'object')  
                {  
                    var oProduct, $row, iHeight, iTempHeight;  
                    for(var i=0, l=json.length; i<l; i++)  
                    {  
                        oProduct = json[i];  
                          
                        // 找出当前高度最小的列, 新内容添加到该列  
                        iHeight = -1;  
                        $('#stage li').each(function(){  
                            iTempHeight = Number( $(this).height() );  
                            if(iHeight==-1 || iHeight>iTempHeight)  
                            {  
                                iHeight = iTempHeight;  
                                $row = $(this);  
                            }  
                        });  
                          
                          
                        $item = $('<div><img src="'+oProduct.image+'" border="0" ><br />'+oProduct.title+'</div>').hide();  
                          
                        $row.append($item);  
                        $item.fadeIn();  
                    }  
                }  
            }  
        });  
    }
  • 相关阅读:
    海康威视web插件安装后还是不能看视频问题
    超详细解释 react,flux,redux 的概念与关系
    vue3和react虚拟DOM的diff算法区别
    leetcode 78. 子集 js 实现
    js 实现扁平数组转为树形结构数组及树形结构数组转为扁平数组
    vite 为什么比 webpack 快?
    实现一个简单版 Vue2 双向数据绑定
    leetcode 415. 字符串相加 js 实现
    transform rotate实现环形进度条
    leetcode 258. 各位相加 js 实现
  • 原文地址:https://www.cnblogs.com/sky6699/p/4724452.html
Copyright © 2020-2023  润新知