I ended up using the solution Rodaine suggested in his comment, after the show/hide i do this:
$('.alt:visible:odd').css('background', '#EBEFF4');
$('.alt:visible:even').css('background', '#FFFFFF');
In my case the setting of background broke my hover, this was solved with !important
to make the hover background stick.
table.grid tr.hover:hover
{
cursor:pointer;
background:#D2E0E9 !important;
}