Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2012, 12:44
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

не найходится элемент по 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 , но на это месте возникает ошибка. почему?
Ответить с цитированием
  #2 (permalink)  
Старый 18.03.2012, 12:51
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Вы создаёте дивы с class, а не с id.
Ответить с цитированием
  #3 (permalink)  
Старый 18.03.2012, 13:08
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

Сообщение от Kolyaj Посмотреть сообщение
Вы создаёте дивы с class, а не с id.
ну да с class, а как это меняет JS код?
Ответить с цитированием
  #4 (permalink)  
Старый 18.03.2012, 13:10
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

То есть вас не смущаете, что вы тегу задаёте class, а искать пытаетесь по id?
Ответить с цитированием
  #5 (permalink)  
Старый 18.03.2012, 13:12
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

Попробовал так document.getElementByClass пишет ошибкку 'document.getElementByClass' is not a function
Ответить с цитированием
  #6 (permalink)  
Старый 18.03.2012, 13:13
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

Сообщение от Kolyaj Посмотреть сообщение
То есть вас не смущаете, что вы тегу задаёте class, а искать пытаетесь по id?
Да нет, смущает. Просто я не знаю функцию, которая ищет по классам.
Ответить с цитированием
  #7 (permalink)  
Старый 18.03.2012, 13:14
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

document.getElementsByClassName -- возвращает коллекцию элементов, есть не во всех браузерах.
Ответить с цитированием
  #8 (permalink)  
Старый 18.03.2012, 13:23
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

Сообщение от Kolyaj Посмотреть сообщение
document.getElementsByClassName -- возвращает коллекцию элементов, есть не во всех браузерах.
Заработало, спасибище. А что делать, если пишет Undefined variable: block Чем ему блок не угодил. если писать так d.style.display="block"; то пишет ошибку Cannot convert 'd.style' to object
Ответить с цитированием
  #9 (permalink)  
Старый 18.03.2012, 13:52
Server
Отправить личное сообщение для Rootpassword Посмотреть профиль Найти все сообщения от Rootpassword
 
Регистрация: 26.09.2011
Сообщений: 252

Сообщение от titans
Заработало, спасибище. А что делать, если пишет Undefined variable: block Чем ему блок не угодил. если писать так d.style.display="block"; то пишет ошибку Cannot convert 'd.style' to object
Это значит, что d.style у вас не существует как объект, но вы его пытаетесь использовать в объектной нотации. Выведите подробности про d-сами увидите, в частности nodeType посмотрите

Последний раз редактировалось Rootpassword, 18.03.2012 в 13:56.
Ответить с цитированием
  #10 (permalink)  
Старый 18.03.2012, 14:13
Аспирант
Отправить личное сообщение для titans Посмотреть профиль Найти все сообщения от titans
 
Регистрация: 18.03.2012
Сообщений: 39

Сообщение от Rootpassword Посмотреть сообщение
Это значит, что d.style у вас не существует как объект, но вы его пытаетесь использовать в объектной нотации. Выведите подробности про d-сами увидите, в частности nodeType посмотрите
alert(d.nodeType); выводит undefined. Значит не находит элемент. А как же его достать то...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Drag-n-Drop - перетянуть элемент Jugo ExtJS 1 10.08.2011 18:10
Как передать элемент в переменную из функции kichSman jQuery 3 12.07.2011 21:16
перенести элемент в другой контейнер debugx jQuery 2 02.06.2011 14:53
определить элемент на котором щелчок warobushek Events/DOM/Window 3 13.06.2010 11:04
Кодировка при использовании Ajax Nichloas AJAX и COMET 9 17.09.2009 15:06