Novità nel codice:

file .html
codice:
<html>
<head>
<title>Tabella Bicolore</title>
<script language="javascript" src="core.js"></script>
<script language="javascript">
function tabella_bicolore(){
	var righe= document.getElementsByTagName("tr")
	for(i=0;i<righe.length;i+=2){
		Core.addClass(righe[i], "alt")
	}

}
</script>


<style type="text/css">
tr.alt{
	background-color:#CCC;
}
</style>
</head>

<body>
<table border="1" width="100%">
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
<tr><td>Ciao</td></tr>
</table>


<input type="button" onClick="tabella_bicolore();" Value="Cambia" />
</body>
</html>
file .js
codice:
Core.hasClass = function(target, theClass)
{
	var pattern = new RegExp("(^| )" + theClass + "( |$)");
	
	if(pattern.text(target.className)){
		return true;
	}
	return false;
}

Core.addClass= function(target, theClass)
{
	if(!Core.hasClass(target, theClass)){
		if(target.className == ""){
			target.className = theClass;
		}
		else{
			target.className += " " + theClass;
		}
	}
}
Come mai non va?