12.2.6. Возможное решение

В программу включено окно alert, чтобы показывать значение переменной howfast (как быстро). alert — это хороший инструмент отладки программ. Просмотр значений переменных часто помогает определить, где программа ведет себя не так, как хотелось бы.

Еще обратите особое внимание на параметр sp (speed, скорость) внутри функции startshow(). Он позволяет передавать в функцию данные, которые вводит пользователь.

И последнее — метод toUpperCase(). С его помощью все варианты написания "slow", "Slow", "sLOW" преобразуются в "SLOW". Хороший прием, не правда ли?

Вот сценарий:

<html>

<head>

<SCRIPT type="text/javascript">

    num=1

    img1 = new Image ()

    img1.src = "pic1.gif"

    img2 = new Image ()

    img2.src = "pic2.gif"

    img3 = new Image ()

    img3.src = "pic3.gif"  

    function startshow(sp)

    {

       howfast=1600

       if (sp.toUpperCase() == "SLOW")

         {howfast=2400}

       if(sp.toUpperCase() == "FAST")

         {howfast=800}

       alert(howfast)

       for (i=0; i<21; i=i+1)

          {document.mypic.src=eval("img"+num+".src")

           for(x=1; x<howfast; x=x+1)

             {}

           num=num+1

           if(num==4)

              {num=1}

           }

           document.mypic.src=img1.src

    }

</script>

</head>

<body>

<center>

<form name="myform">

<img src="pic1.gif" name="mypic" border=0>

<p>

Задайте скорость анимации: (fast, medium, slow) <input type="text" value="medium" name="speed">

<p>

<a href="JavaScript:startshow(document.myform.speed.value)">Показать анимацию</a>

</form>

</center>

</body>

</html>