亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

代碼實現不了。找不到錯誤,編譯可以通過。求幫助。

window.onload?=?function(){
	waterfull('main','box');
}

function?waterfull(parent,box){
	var?oParent?=?document.getElementById(parent);
	var?oBox?=?getByClass(oParent,box);
	var?oBoxW?=?oBox[0].offsetWidth;
	var?clos?=?Math.floor(document.?documentElement.clientWidth/oBoxW);
	oParent.style.cssText?=?'width:'+oBoxW*clos+'px;margin:0?auto;';

	var?hArr?=?[];//存放每列高度的數組
	for?(var?i?=?0;?i?<?oBox.length;?i++)?{
		if(i<clos){
			hArr[i]?=?oBox[i].offsetWidth;//先把高度插進數組?
		}else{
			var?minH?=?Math.min.apply(null,hArr);
			var?index?=?getMinhIndex(hArr,minH);
			oBox[i].style.postion?=?'absolute';
			oBox[i].style.top?=?minH+'px';
			//oBox[i].style.left?=?index*oBoxW+'px';
			oBox[i].style.left?=?oBox[index].offsetLeft+'px';
			hArr[index]+=oBox[i].offsetHeight;
		}
	}
}

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

function?getMinhIndex(arr,val){
	for(var?i?in?arr){
		if(arr[i]?==?val){
			return?i;
		}
	}
}


正在回答

1 回答

function?getByClass(parent,className){

????var?boxArr?=?[],//用來存儲獲取到的所有class為box的元素

????oElement?=?parent.getElementsByTagName('*');

????for?(var?i?=?0;?i?<?oElement.length;?i++)?{

????????if(oElement[i].className?==?className){

????????????boxArr.push(oElement[i]);

????????}

????};

????return?boxArr;

}

上面第三行中加粗地方 ? 你的parent不能直接這么用,它實際上是一個id的值 ? ?應該先獲取id為parent的dom元素進行操作,

第三行代碼改為 ?oElement = document.getElementById("parent").getElementsByTagName("*");試試看是不是這個原因


0 回復 有任何疑惑可以回復我~
#1

蒼白的尾巴 提問者

我找到了原因了,oBox[i].style.postion = 'absolute';的position拼寫錯誤了。不過還是謝謝你
2016-07-18 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

代碼實現不了。找不到錯誤,編譯可以通過。求幫助。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號