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


      最近做的一個項目需要做頁面無刷新下拉加載圖片,調研了一番,大多都采用檢測滾動條達到底部,然后利用ajax加載下一頁數據對頁面數據進行添加,根據這一邏輯,自己寫了一個,具體代碼如下:

 

JQuery寫下拉觸發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語句直接進行追加,但這樣可擴展性小),從而實現這一效果。

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

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

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

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM