JQuery實現無刷新下拉加載圖片

最近作的一個項目須要作頁面無刷新下拉加載圖片,調研了一番,大多都採用檢測滾動條達到底部,而後利用ajax加載下一頁數據對頁面數據進行添加,根據這一邏輯,本身寫了一個,具體代碼以下:html

 

JQuery寫下拉觸發ajax事件ajax

 $(window).scroll(function () {
            if($(window).scrollTop()==($(document).height()-$(window).height()))//判斷右邊滑動條是否滑到最下
            {
                $.ajax({
                    url:"",//後臺地址
                    dataType:"json",
                    data:{},//附帶參數,通常加上上一次請求的結尾ID或者其餘標示
                     ......,
                    success:function(data){
                            $("#Album").append(data.result);//經過返回的結果對Album的Div進行添加數據

                    }
                })
            }
        })

這一過程基本原理以下,在頁面首次加載的時候加載必定的圖片,等到右邊滑動條滑動到最下面的時候,觸發ajax事件,進行與後臺通訊,經過對後臺請求獲得json數據,其中包含了須要添加到頁面的內容,經過append對頁面原有的層進行追加內容(中間可能還涉及一些數據讀取的問題,若是爲了方即可以直接後臺處理好返回一串html語句直接進行追加,但這樣可擴展性小),從而實現這一效果。json

在實現過程當中還發現了另外一個問題:jq寫的scroll事件容易屢次觸發,即滾動一下鼠標觸發屢次,對於這一個狀況,思考了下主要有如下兩種解決思路:app

1.添加計時器,在5-10秒內只容許觸發一次()url

2.添加一個變量,讓其在scroll剛開始執行時變爲false,只有一次執行完才變回true,以此保證scroll每次只能有一個在執行。spa

相關文章
相關標籤/搜索