SO fiddle

Test Fiddle mainly for SO Questions

by Nick Craver

HTML

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/dot-luv/jquery-ui.css">
<table class="altRow">
    <tr>
        <td rowspan="2">1</td>
        <td>joe</td>
        <td>1</td>
    </tr>
    <tr>
        <td>tom</td>
        <td>2</td>
    </tr>
    <tr>
        <td>2</td>
        <td>joe</td>
        <td>3</td>
    </tr>
    <tr>
        <td>3</td>
        <td>joe</td>
        <td>4</td>
    </tr>
    <tr>
        <td>4</td>
        <td>joe</td>
        <td>6</td>
    </tr>
    <tr>
        <td rowspan="2">5</td>
        <td>joe</td>
        <td>5</td>
    </tr>
    <tr>
        <td>tom</td>
        <td>3</td>
    </tr>
</table>

CSS

td { vertical-align: top; padding: 3px; }

.alt { background-color: #DEDFDE; }

JavaScript

$("table.altRow tr").filter(function() { 
  return $(this).children().length == 3;
}).filter(':even').addClass('alt');

$("tr.alt td[rowspan]").each(function() {
  $(this).parent().nextAll().slice(0, this.rowSpan - 1).addClass('alt');
});