не найходится элемент по getElementById
Привет всем. У меня такой вопрос. Есть цикл. Который генерирует 100 div.
function gen() { document.write('<div class="hht'+prom+'" style="left:'+Math.floor(Math.random()*90)+'%;display:none;}"></div>'); prom++; } for (var i=0; i<count; i++) gen(); генерация проходит успешно. Я хочу сделать матрицу. Т.е. 100 квадратиков зелёного цвета рандомно располагаются на одной линии и потомпо одному начинают спускаться. Так вот вопрос. Как мне обратится к определённому номеру div? Выше преведённый цикл создаёт дивы hht0 - hht99 . Я написал такую функцию: function show(gf) { var s="hht"+gf; var d=document.getElementById(s); d.style.display=block; } Данная функция должна отображать блок с определённым номером. Допустим я в функцию передаю цифру 10. Переменная gh=10. Мне нужно , что бы getElementById взял div10 , но на это месте возникает ошибка. почему? |
Вы создаёте дивы с class, а не с id.
|
Цитата:
|
То есть вас не смущаете, что вы тегу задаёте class, а искать пытаетесь по id?
|
Попробовал так document.getElementByClass пишет ошибкку 'document.getElementByClass' is not a function
|
Цитата:
|
document.getElementsByClassName -- возвращает коллекцию элементов, есть не во всех браузерах.
|
Цитата:
|
Цитата:
|
Цитата:
|
titans,
Цитата:
|
Цитата:
d[0].style.display="block" |
Цитата:
|
Ещё вопрос. а почему функция не отрабатывает смещение?
function down1(gd) { var f=0; for (var i=0; i<gd; i++) { var s="hht"+gd; var d=document.getElementsByClassName(s); var top = d[0].style.top; top = parseInt(top); if (top>min) top=0; d[0].style.top = (top+g)+'%'; f++; } } Уже и с классом имеем дело, а всё равно не смещает... top после парсинга = NaN . т.к. не получает высоту... |
Цитата:
d[0].style.top == undefined |
Цитата:
|
Часовой пояс GMT +3, время: 23:44. |