2013-09-13 5 views
1

Я просто изучаю JavaScript и делаю курс в веб-дизайне, поэтому я новичок, но мне нужно иметь десять изображений, которые меняются каждые 5 минут независимо. каждый из них будет меняться каждые 5 минут в соответствии с часами ПК между 3-мя изображениями и возвратом к первому.JavaScript для множественного изменения изображения на основе часов pc

Я пытался достичь этого, используя промежуток времени, но я обнаружил, что я просто сбиваю с толку, может ли кто-нибудь помочь?

Я думаю, что это может быть слишком продвинутым для меня, но мне предложили свою первую внештатную работу, поэтому, пожалуйста, помогите! Лол

Я путаться, когда речь идет о выложив JavaScript, как я могу получить только последнее изображение из десяти делать то, что мне нужно, когда мне нужно все десять, чтобы делать то, что мне нужно

Спасибо, ребята

<script> 
var start = new Date().getTime(), 
    i = 0, 
    //get the node of the image to change 
    img = document.getElementsByTagName('IMG')[0]; 

setInterval(function(){ 
    //what time is now 
    var now = new Date().getTime(); 
    if(now - start > 60000){ 
     //initialize the counter 
     start = now; 
     //overlay with 0's -> substr(-4) 
     //rotate on 1440 with a modulo -> i++ % 1440 
     img.src = ('000' + (i++ % 1440 + 1)).substr(-4) + '.jpg'; 
    } 
}, 10000); //check every 10 sec 

.

Я нашел это, но не могу получить больше, чем одно изображение рабочего

+0

Что такое заблуждение о заданном интервале? Вы определили функцию, которая будет работать после интервала? – abiessu

+0

Проблема, с которой я столкнулась, - это получить все 10 работ. Он имеет тенденцию быть только последним изображением, которое работает, но остальные 9 выглядят так, как будто js пропускает их. – JSStudent

ответ

0

Проблема заключается в том, что

document.getElementsByTagName(...) 

возвращает список элементов. Ваш код выбирает только первый и устанавливает для него переменную «img». Измените функцию «setInterval» для обработки массива вместо одного элемента и установить «IMG» в полный массив вместо одного элемента, и он должен работать:

img = document.getElementsByTagName('IMG'); 
+0

Если вам нужна более конкретная помощь в том, как обращаться с массивами javascript или другими вопросами о том, как это сделать, прокомментируйте с помощью конкретных запросов. – abiessu

 Смежные вопросы

  • Нет связанных вопросов^_^