Hauke: Fehler in Slidshow

Hallo,

dies soll mal eine Slideshow mit 9 Bildern werden, die auf drei Plätzen immer einen weiterrücken:

<HTML>
<script language="JavaScript">
<!--
var Datei0;
var Datei1;
var Datei2;
var Datei3;
var Datei4;
var Datei5;
var Datei6;
var Datei7;
var Datei8;
var Datei9;

var i = 0;
var j = 0;
var k = 0;
var l = 0;
var m = 0;
var n = 0;
var o = 0;
var p = 0;
var q = 0;
var r = 0;

function Versetz(){

j = i + 1;
k = i + 2;
l = i + 3;
m = i + 4;
n = i + 5;
o = i + 6;
p = i + 7;
q = i + 8;
r = i + 9;

if (i == 5){i = 0;}
if (j >= 5){j = j - 5;}
if (k >= 5){k = k - 5;}
if (l >= 5){l = l - 5;}
if (m >= 5){m = m - 5;}
if (n >= 5){n = n - 5;}
if (o >= 5){o = o - 5;}
if (p >= 5){p = p - 5;}
if (q >= 5){q = q - 5;}
if (r >= 5){r = r - 5;}

Datei0 = "../bilder/" + i + ".gif";
Datei1 = "../bilder/" + j + ".gif";
Datei2 = "../bilder/" + k + ".gif";
Datei3 = "../bilder/" + l + ".gif";
Datei4 = "../bilder/" + m + ".gif";
Datei5 = "../bilder/" + n + ".gif";
Datei6 = "../bilder/" + o + ".gif";
Datei7 = "../bilder/" + p + ".gif";
Datei8 = "../bilder/" + q + ".gif";
Datei9 = "../bilder/" + r + ".gif";

bild0.src = Datei0;
bild1.src = Datei1;
bild2.src = Datei2;

i = i + 1;

window.setTimeout("Versetz()",1000);
}
window.setTimeout("Versetz()",1000);
//-->
</script>
<img name="bild0" src="images/0.gif">
<img name="bild1" src="images/0.gif">
<img name="bild2" src="images/0.gif">

</HTML>

Es laufen aber nur 4 Bilder.

Danke für jede Hilfe,

Hauke

  1. Hallo,

    dies soll mal eine Slideshow mit 9 Bildern werden, die auf drei Plätzen immer einen weiterrücken:

    <HTML>
    <script language="JavaScript">
    <!--
    var Datei0;
    var Datei1;
    var Datei2;
    var Datei3;
    var Datei4;
    var Datei5;
    var Datei6;
    var Datei7;
    var Datei8;
    var Datei9;

    var i = 0;
    var j = 0;
    var k = 0;
    var l = 0;
    var m = 0;
    var n = 0;
    var o = 0;
    var p = 0;
    var q = 0;
    var r = 0;

    function Versetz(){

    j = i + 1;
    k = i + 2;
    l = i + 3;
    m = i + 4;
    n = i + 5;
    o = i + 6;
    p = i + 7;
    q = i + 8;
    r = i + 9;

    if (i == 5){i = 0;}
    if (j >= 5){j = j - 5;}
    if (k >= 5){k = k - 5;}
    if (l >= 5){l = l - 5;}
    if (m >= 5){m = m - 5;}
    if (n >= 5){n = n - 5;}
    if (o >= 5){o = o - 5;}
    if (p >= 5){p = p - 5;}
    if (q >= 5){q = q - 5;}
    if (r >= 5){r = r - 5;}

    Datei0 = "../bilder/" + i + ".gif";
    Datei1 = "../bilder/" + j + ".gif";
    Datei2 = "../bilder/" + k + ".gif";
    Datei3 = "../bilder/" + l + ".gif";
    Datei4 = "../bilder/" + m + ".gif";
    Datei5 = "../bilder/" + n + ".gif";
    Datei6 = "../bilder/" + o + ".gif";
    Datei7 = "../bilder/" + p + ".gif";
    Datei8 = "../bilder/" + q + ".gif";
    Datei9 = "../bilder/" + r + ".gif";

    bild0.src = Datei0;
    bild1.src = Datei1;
    bild2.src = Datei2;

    i = i + 1;

    window.setTimeout("Versetz()",1000);
    }
    window.setTimeout("Versetz()",1000);
    //-->
    </script>
    <img name="bild0" src="images/0.gif">
    <img name="bild1" src="images/0.gif">
    <img name="bild2" src="images/0.gif">

    </HTML>

    Es laufen aber nur 4 Bilder.

    Danke für jede Hilfe,

    Hauke

    Habs hingekriegt, ich hatte vergessen

    if (i == 5){i = 0;}
    if (j >= 5){j = j - 5;}
    if (k >= 5){k = k - 5;}
    if (l >= 5){l = l - 5;}
    if (m >= 5){m = m - 5;}
    if (n >= 5){n = n - 5;}
    if (o >= 5){o = o - 5;}
    if (p >= 5){p = p - 5;}
    if (q >= 5){q = q - 5;}
    if (r >= 5){r = r - 5;}

    in

    if (i == 9){i = 0;}
    if (j >= 9){j = j - 9;}
    if (k >= 9){k = k - 9;}
    if (l >= 9){l = l - 9;}
    if (m >= 9){m = m - 9;}
    if (n >= 9){n = n - 9;}
    if (o >= 9){o = o - 9;}
    if (p >= 9){p = p - 9;}
    if (q >= 9){q = q - 9;}
    if (r >= 9){r = r - 9;}

    zu ändern,

    alles klar.

    Hauke

    1. Hallo,

      schon mal an die Verwendung von Arrays gedacht?
      macht den Code wesentlich "schlanker"