javascript - js 函數(shù)代碼,關(guān)于滾動(dòng)加載數(shù)據(jù)
問(wèn)題描述
可以詳細(xì)解釋一下這段代碼的意思嗎?scroll初始化是true
問(wèn)題解答
回答1:你給的這個(gè)函數(shù)應(yīng)該是一個(gè)模塊中的方法,需要配合這個(gè)模塊中的其他屬性或方法一起看。單看這個(gè)方法。這個(gè)方法應(yīng)該是作為一個(gè)事件(估計(jì)是滾動(dòng)事件)的回調(diào)函數(shù)存在的。當(dāng)這個(gè)事件觸發(fā)時(shí)執(zhí)行這個(gè)方法,有兩種情況(1)this.scroll為true,進(jìn)入具體邏輯
totalheight與body...作比較 實(shí)際上是頁(yè)面已顯式高度,和頁(yè)面內(nèi)容實(shí)際高度做比較簡(jiǎn)單點(diǎn)說(shuō)就是滾動(dòng)條是否快到底部了,如果滿足條件進(jìn)入下面的邏輯,做這么幾件事 已顯式頁(yè)面+1,this.scroll置為false,進(jìn)行判斷,已顯示頁(yè)面是否小于5,如果是加載下面的頁(yè)面
(2)this.scroll為false,不執(zhí)行上述邏輯// 在這段代碼中缺少將this.scroll置回為true的邏輯,我想是在getAjaxData中,這么做的好處是,在加載新頁(yè)面時(shí)滾動(dòng)監(jiān)聽(tīng)事件暫時(shí)失效,不會(huì)造成重復(fù)發(fā)起同一請(qǐng)求
回答2:就是滾動(dòng)到底部還有200距離,開(kāi)始加載一次數(shù)據(jù),等數(shù)據(jù)渲染完成,恢復(fù)。再循環(huán)
回答3:我猜你是想問(wèn)為什么設(shè)置這個(gè)初始標(biāo)志位?應(yīng)該是為了防止?jié)L動(dòng)一次ajax請(qǐng)求多次。
