0

Ich habe eine Tabelle mit Zeilen, die von einer Klasse markiert sind. Diese Zeilen sollten Zebrastreifen sein. Der Nachteil ist, dass sie nicht immer aufeinanderfolgen.Versuch Zebra Streifen willkürliche Zeilen in einer Tabelle

Ich habe versucht, durch Tabelle und Klassennamen übereinstimmen, aber das Endergebnis ist immer falsch. In diesem Fall wird das Striping auf Tabellenebene angewendet und dann nur für die Zeilen mit der Klasse aktiviert.

Was muss ich ändern, damit dies so funktioniert, wie ich es vorhabe?

Script

function FormatTable() 
{ 
    $("#TableId .arbitrarySelector:nth-child(2n+1)").addClass('anotherEquallySpecialRow') 
} 

HTML

<table id="TableId" onclick="FormatTable()"> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should be Changed and is</div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should Not be Changed and is Not</div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should be Changed and is</div></td> 
    </tr> 
    <tr> 
     <td><div class="space"></div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should NOT be changed but is</div></td> 
    </tr> 
    <tr> 
     <td><div class="space"></div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should be Changed and is</div></td> 
    </tr> 
    <tr> 
     <td><div class="space"></div></td> 
    </tr> 
    <tr> 
     <td><div class="space"></div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should Not be Changed and is Not</div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should be Changed and is</div></td> 
    </tr> 
    <tr class="arbitrarySelector"> 
     <td><div class="space">Should Not be Changed and is Not</div></td> 
    </tr> 
</table> 

Antwort

6

Sie könnten machen dies zu schwierig. Wenn du Zebra Striping machen willst, benutze einfach etwas wie das :odd selector und ändere die Klasse abhängig davon. So etwas wie dies ...

// Add zebra striping. 
$('.arbitrarySelector:odd').addClass('zebra'); 

Und dann würde die CSS so etwas wie ...

.zebra 
{ 
    background-color: #dddddd; 
} 
+0

Punkte für Sie, Achem, und sein Rasiermesser. – QueueHammer

+0

@JustSmith - Froh ich könnte helfen! Würde es Ihnen etwas ausmachen, die Antwort zu akzeptieren, damit andere sie in der Zukunft finden können (und ich schätze den Sprecher). :-) Vielen Dank! – JasCav

+0

Sorry, hätte früher akzeptiert, aber die Seite hat mich warten lassen, bis ich das nächste Mal die Seite nutzen würde. Dumme Regeln. – QueueHammer

Verwandte Themen