当前位置: 代码迷 >> Ajax >> windswaterflow 瀑布流控件的使用有关问题,请高手帮忙look下
  详细解决方案

windswaterflow 瀑布流控件的使用有关问题,请高手帮忙look下

热度:524   发布时间:2013-10-22 16:17:03.0
windswaterflow 瀑布流控件的使用问题,请高手帮忙look下
我用的是windswaterflow 瀑布流控件。
在瀑布流页面中加了个下拉选择框,初始化加载滚动鼠标,数据请求都一切正常。但是如果我选择了下拉框,在滚动鼠标加载数据的时候,ajax就会加载两遍请求,第一遍是全部的数据,第二遍才是选择下拉框过滤后的数据。百思不得其解,本人js菜鸟一只。谢谢各位大侠帮助。


        //支持滚动加载  就是这个事件 在选择了下拉框,在滚动加载数据的时候 会请求两遍
        var _SolStatus = 0;
        if (param.scroll && param.ajaxServer != '' && param.boxParam != '' && parseInt(param.scrollBoxNumber) > 0) {
            $(window).scroll(function() {
                var scrollh = document.body.scrollHeight;
                var clienth = document.documentElement.clientHeight;
                var scrollt = document.documentElement.scrollTop + document.body.scrollTop;
                if (scrollt + clienth >= scrollh && _SolStatus == 0 && _init == 1 && !_isnoShow) {
                    if ((param.maxPage == 0 || param.pageNumber <= param.maxPage)) {
                        _SolStatus = 1;
                        if (param.loadSelector != '') {
                            $(param.loadSelector).show();
                        }
                        var postPara = {};
                        postPara[param.boxParam] = parseInt(param.scrollBoxNumber);
                        postPara[param.pageParam] = parseInt(param.pageNumber);
                        setTimeout(function() {
                            $.getJSON(param.ajaxServer, postPara, function(data) {
                                if (data.length == 0) {
                                    //无数据返回时则显示无数据提示
                                    if (param.noSelector != '') {
                                        if (param.noSelector) {
                                            $(param.noSelector).fadeIn(1000).delay(2500).fadeOut(1000);
                                        }
                                    }
                                    if (param.loadSelector != '') {
                                        $(param.loadSelector).hide();
                                    }