大項目の子要素に小項目が複数あり、各大項目ごとに、小項目の3つおきにfloatを解除するクラス"clear"を追加したい。

HTML

<!-- 大項目1 -->
<div class="daikoumoku">
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
</div>
<!-- 大項目2 -->
<div class="daikoumoku">
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
</div>
<!-- 大項目3 -->
<div class="daikoumoku">
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
	<div class="syoukoumoku"></div>
</div>

javascript

//ページロード時のイベントリスナを追加
if (window.addEventListener) { /* Firefox */  
  window.addEventListener("load", fxClassClr, false);
}    
else if (window.attachEvent) { /* IE */  
  window.attachEvent("onload", fxClassClr);  
}      
else {
  window.onload = fxClassClr;  
}  



function fxClassClr() {
//大項目の要素を取得
var elem = document.querySelectorAll('div.daikoumoku');

//大項目の要素数を取得
var len = elem.length;
//大項目の要素数分回す
	for (var i=0; i<len; i++){
//大項目ごとに小項目の要素を取得
	var elemi = elem[i].querySelectorAll('div.syoukoumoku');
//大項目ごとに小項目の要素数を取得
	var leni = elemi.length;
//大項目ごとに小項目の要素数分回す
		for(var j=0; j<leni;j++){
		//インデックスを3で割った余りを求める
			var k = j%3;
		//インデックスを3で割った余りが0のとき
			if(k == '0')
		//クラス名をsyoukoumoku clearにする
			elemi[j].className = 'syoukoumoku clear';
		}
	}
}