KD-one: Ist das Script noch einfacher aufbaubar?

Beitrag lesen

<script type="text/javascript">
<!--
function change(i,klasse)
 {
 for(var k=i;k>=0;k--) if((k==i || i>=3 )&& k<3) document.getElementsByTagName("tr")[k].className = klasse;
 }
//-->
</script>

Hi Ronnie,

Ist klar, funktioniert auch prächtig, aber die Funktion ist mir nicht ganz klar.
Du definierst in der For-Schleife eine Variable namens k.K übernimmt den Wert von i.
Wenn k größer/gleich 0 ist, setzt du den Zähler in Gang.
Wieso aber wird dert Zähler definitiv nur dann angeworfen, wenn igrößer/gleich 3 ist???
In der if-Bedingung hast du doch ein logisches Oder angewandt, und....
Ach so, jetzt blitzt es. :-) Wenn die Bedingung i>=3 erfüllt ist, verzweigt das Script auf den Zähler, durch die && Verknüpfung auch denn, wenn i schon runtergezählt ist.
Durch die Bedingung k==i || i>=3 )&& k<3 wird ein übergebener Wert unter drei jedoch nicht in die Schleife übergeben, sondern einmalig durchgeführt.
Eine kleine Unsicherheit besteht aber noch:
Durch das Oder wird ja geprüft, ob entweder die Bedingung k==i richtig ist oder i>=3.
k ist aber in der for-Schleife mit i verknüpft und müsste folglich immer ==i sein????
Hab ich das so nun richtig verstanden?
Wäre nett, wenn du mir das noch erklären könntest. :-)

PS.: Geil, echt was zum dazulernen! ;-)

Gruß

Kurt