Помощь по JS

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
crypton
Сообщения: 1
Зарегистрирован: 12 фев 2017, 19:33

12 фев 2017, 20:06

Недавно начал изучать JavaScript, до этого неполохо освоил HTML и CSS. Писал довольно неплохие сайты лишь на них уже через пару дней после изучения. Но вот решил взяться собственно программирование и решил начать с JS.
Учил с разных сайтов теорию, но имея уже некоторый опыт при изучении языков разметки, - понял что лучшее в этом деле - это практика, поэтому пробую хоть что-то писать, хотя бы какую-то примитивщину. Сперва всё шло хорошо, но вот уже целый день сижу над одним приколом. Заранее извиняюсь за нубский вопрос...

Не могу понять почему не работает этот код?
function blim (){
document.getElementsByTagName('body').style.backgroundImage = "url('photos/1.jpg')";
}

function blim2 (){
document.getElementsByTagName('body').style.backgroundImage = "url('photos/111.jpg')";
}

setInterval (blim, 1000);
setInterval (blim2, 2000);
Т.е. - нужно, чтобы каждую секунду менялся фон (картинка). Если просто задать название фона, всмысле цвет (red, green и т.д.), то всё работает, а с картинкой почему-то нет. В чём трабл? Может ссылка на фото не так указана? Но я смотрел с других примеров - всё работает! Какая разница между background и backgroundimage? Как же это бесит, когда из-за одного символа код может не работать. Хотя, чувствую, - тут что-то другое.

Также пробовал писать без TagName, просто через document.body.style... нифига
Может через id? К body можно задать id?)))
Хочется сделать смену фона именно через функцию.

Решил обратиться сюда, а то в нете не нашел ничего, хотя не думал что такое возможно. Но иногда просто очень тяжело оформить свой вопрос в поисковый запрос, поэтому решил перейти а форумы, где есть знающие люди.
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

14 фев 2017, 20:24

getElementsByTagName дает массив HTMLElement, а не один элемент
It's a long way to the top if you wanna rock'n'roll
Ответить