Risolto, il problema è nell'AddEvent.
Non supporta parametri nella funzione.
Ho dovuto dichiarare delle var che identificassero i parametri.
Se servisse a qualcuno pubblico qui lo script finale
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Altenate Colored Table</title>
<style type="text/css" media="screen">
#tbl_color {border:1px solid #707070;font-family:"Trebuchet MS", Verdana, sans-serif;font-size:0.8em}
#tbl_color td {border:1px solid black}
.trNormal {background-color:#FFF}
.trAlternate { background-color:#66CCFF}
</style>
<script type="text/javascript" src="AlternateColoredRows.js"> </script>
</head>
<body>
<table id="tbl_color" cellpadding="0" cellspacing="2">
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
<tr>
<td>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec magna.</td>
</tr>
</table>
</body>
</html>
il file AlternateColoredRows.js
codice:
//===================
// Parametri da personalizzare
idTable = "tbl_color"; // Tabella che avra' le righe alternate
cssNormal = "trNormal"; // classe css per le righe pari
cssAlternate = "trAlternate"; // classe css per le righe dispari
//===================
// Event Listener
// by Scott Andrew - http://scottandrew.com
//===================
function addEvent(elm, evType, fn, useCapture)
{
// addEvent and removeEvent
// 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
{
alert("Handler could not be removed");
}
}
function AlternateColorTable()
{
if(document.getElementById && document.createElement)
{
//alert(document.getElementById(idTable));
var allTr = document.getElementById(idTable).getElementsByTagName('TR');
for (var i=0;i<allTr.length;i++)
{
var currentTR = allTr[i];
{
if (i%2==0) currentTR.setAttribute("class", cssNormal);
else currentTR.setAttribute("class", cssAlternate);
}
}
}
}
addEvent(window, "load", AlternateColorTable);