スマホコーディングなど、「軽量化!軽量化!」と叫ばれる中でNo jQueryが求められる事がある。

そんなときには要素の高さをそろえる位は、jquery を使わずにやってしまいたい。

 

1.javascriptで、getElementsByClassNameが必要。


function myGetElementsByClassName (_class , _tag , _id) {
	
	var targetId , elementList , classList ,  i , j , nodes = [];
	
	targetId = document.getElementById(_id);
	elementList = targetId.getElementsByTagName(_tag);	
	
	for (i=0; i < elementList.length ; i++ ) {
			classList = elementList[i].className.split(" ");			
			for (j=0; j < classList.length ; j++ ) {	
			if(classList[j] === _class){	
				nodes.push(elementList[i]);				
				break;					
			}
		}
	}		
	return nodes;

}

2.子要素の高さを取って、一番大きい物を付ける。

className : 高さ揃えをしたい要素のラッパークラス名
elemTagName : 高さ揃えをしたい要素のラッパータグ名
parentId : ラッパーの親ID
fixTargetTag : 高さを揃えたい要素のタグ名

function fixHeight (className, elemTagName, parentId, fixTargetTag){
	 	var _this = this;

		var blocs = _this.getElementsByClass( className , elemTagName , parentId );

		var childTag = fixTargetTag;

		// check ie 7
		// var olderThanIE7 = (_this.isIE() && _this.isIE() < 8)? true : false;

		for (var i=0; i<blocs.length; i++)="" {="" var="" harr="[];" dls="blocs[i].getElementsByTagName(childTag);" for(var="" d="0;d

Leave a Reply

Your email address will not be published. Required fields are marked *