не найходится элемент по 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, время: 20:45. |