function init() {
		
    // Find all tables and stripe them
    if (!document.getElementsByTagName) return;
    var tables = document.getElementsByTagName("table");
    for (var i=0; i<tables.length; i++) {
			if ((' '+tables[i].className+' ').indexOf("withlines") != -1) stripe(tables[i]);
    }
}

function stripe(table) {
	var even = false;

	var evenClass = "roweven";
	var oddClass = "rowodd";

  // find all the tr elements... 
	var trs = table.getElementsByTagName("tr");	
	// ... and iterate through them
	for (var i = 0; i < trs.length; i++) {
		var tds = trs[i].getElementsByTagName("td");
		for (var j = 0; j < tds.length; j++) {
			var mytd = tds[j];		
			mytd.className = even ? oddClass : evenClass;				
		}
		// flip from odd to even, or vice-versa
		even = !even;
	}
}


addEvent(window, "load", init, false);

function addEvent(elm, evType, fn, useCapture) {
	// cross-browser event handling for IE5+, NS6 and Mozilla
	// By Scott Andrew
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	} else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	} else {
		elm['on' + evType] = fn;
	}
}
