Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > непрерывная смена фотографий


Автор: brenfire 8.8.2008, 08:41
Здравствуйте, подскажите. Не работает вот такой вот скрипт, почему?
Идея в следующем. У  меня есть некоторое количество фотографий, их много.
Чтобы не прописывать адрес каждой фотки создан цикл. А смысл скрипта в непрерывном показе фотографий на сайте с определенной временной задержкой. Подскажите, где ошибка!
<head>

<!-- Данный скрипт надо поместить в заголовке документа -->



<script language="JavaScript">

<!--

var start_num = 1; // идекс 1-й фотки
var N = 20; // количество фоток
img_a = new Array();
for ( i = 0; i < N; i++ )
{
img_a[i] = new Image();
img_a[i].src = "file:///C:/Documents and Settings/root/Рабочий стол/homepage/фотографии/" + (i + start_num) + ".jpg";
}



//}

function img_b()

{
document.images[1].src=img_a[i].src;

i++;
if(i>20) i=0;
setTimeout("img_b()", 2000); // Тут задается в миллисекундах
// частота мелькания кадров.
// В данном случае кадры
// меняются каждые 2 секунды
}
//-->
</SCRIPT>

</head>
<body background="fon.png" onLoad=img_b()>


<img src="file:///C:/Documents and Settings/root/Рабочий стол/homepage/фотографии/1.jpg" height=200>


</body>

</html> 

Автор: Ockonal 8.8.2008, 11:32
Вы и тут smile
document.images[1].src=img_a[i].src;
Где вы нашли переменную i?

Автор: brenfire 8.8.2008, 13:39
ну она есть. вот я её использую 
(i + start_num) + ".jpg";
Вы, я как погляжу, тоже  здесь)

Автор: Ockonal 8.8.2008, 18:20
smile Смотрите,

здесь 'i' локальная переменная. Она рабочая только в зоне цикла( между скобками )

for ( i = 0; i < N; i++ )
{
// Вот здесь начало цикла, тут вы можете использовать i
img_a[i] = new Image();
img_a[i].src = "file:///C:/Documents and Settings/root/Рабочий стол/homepage/фотографии/" + (i + start_num) + ".jpg";
// Вот здесь конец, тут тоже можете
}

// А вот здесь,уже, не можно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)