第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

數(shù)據(jù)塊重復(fù)加載

在滾動時數(shù)據(jù)塊在重復(fù)加載,是不是我寫的哪里不對???

正在回答

2 回答

已解決,在

window.onscroll=function(){
????if(checkScrollSlide()){

這段語句中if里面的函數(shù)加個括號就可以了。

0 回復(fù) 有任何疑惑可以回復(fù)我~
js代碼
window.onload?=?function(){
????waterfall('main','box');
????var?dataInt={"data":[{"src":'24.jpg'},{"src":'25.jpg'},{"src":'26.jpg'},{"src":'27.jpg'},{"src":'28.jpg'},{"src":'29.jpg'},{"src":'30.jpg'},{"src":'31.jpg'},{"src":'32.jpg'},{"src":'33.jpg'},{"src":'34.jpg'}]}
????window.onscroll=function(){
????????if(checkScrollSlide){//如果返回值為真,那么就具備了加載數(shù)據(jù)塊的條件
????????????var?oParent=document.getElementById('main');
????????????//將數(shù)據(jù)塊渲染到當(dāng)前頁面的尾部
????????????for(var?i=0;i<dataInt.data.length;i++){
????????????????var?oBox=document.createElement('div');
????????????????oBox.className='box';
????????????????oParent.appendChild(oBox);
????????????????var?oPic=document.createElement('div');
????????????????oPic.className='pic';
????????????????oBox.appendChild(oPic);
????????????????var?oImg=document.createElement('img');
????????????????oImg.src="images/"+dataInt.data[i].src;
????????????????oPic.appendChild(oImg);
????????????}
????????????waterfall('main','box');
????????}
????}
}

function?waterfall(parent,box){
????//將main下的所有class為box的元素取出來
????var?oParent=document.getElementById(parent);
????var?oBoxs=getByClass(oParent,box);
????//計算整個頁面顯示的列數(shù)(頁面寬/box的寬)
????var?oBoxW=oBoxs[0].offsetWidth;
????var?cols=Math.floor(document.documentElement.clientWidth/oBoxW);
????//設(shè)置main的寬
????oParent.style.cssText='width:'+oBoxW*cols+'px;margin:0?auto;';
????var?hArr=[];//存儲每一列高度的數(shù)組
????for(var?i=0;i<oBoxs.length;i++){
????????if(i<cols){
????????????hArr.push(oBoxs[i].offsetHeight);
????????}else?{
????????????var?minH=Math.min.apply(null,hArr);
????????????var?index=getMinhIndex(hArr,minH);//找到最小高度圖片的索引
????????????oBoxs[i].style.position='absolute';
????????????oBoxs[i].style.top=minH+'px';
????????????//oBoxs[i].style.left=oBoxW*index+'px';
????????????oBoxs[i].style.left=oBoxs[index].offsetLeft+'px';
????????????hArr[index]+=oBoxs[i].offsetHeight;
????????}
????}
}

//根據(jù)class獲取元素
function?getByClass(parent,clsName){
????var?boxArr?=?new?Array(),//用來存儲獲取到的所有class為box的元素
????????oElements=parent.getElementsByTagName('*');
????for(var?i=0;i<oElements.length;i++){
????????if(oElements[i].className==clsName){
????????????boxArr.push(oElements[i]);
????????}
????}
????return?boxArr;
}

//獲取最小高度圖片的index
function?getMinhIndex(arr,val){
????for(var?i?in?arr){
????????if(arr[i]==val){
????????????return?i;
????????}
????}
}

//檢查是否具備了滾動加載數(shù)據(jù)塊的條件
function?checkScrollSlide(){
????var?oParent=document.getElementById('main');
????var?oBoxs=getByClass(oParent,'box');
????var?lastBoxH=oBoxs[oBoxs.length-1].offsetTop+Math.floor(oBoxs[oBoxs.length-1].offsetHeight/2);
????var?scrollTop=document.body.scrollTop?||?document.documentElement.scrollTop;
????var?height=document.body.clientHeight?||document.documentElement.clientHeight;
????return?(lastBoxH<scrollTop+height)?true:false;
}


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

數(shù)據(jù)塊重復(fù)加載

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號