Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> getElementById() почему не работает, или повторение азов 
V
    Опции темы
Royan
Дата 7.8.2007, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: 1
Всего: 15



Имеем такую структуру документа:

Код

<HTML>
  <HEAD>
    <TITLE>Название</TITLE>
    <LINK href="css/my.css" media="screen" rel="StyleSheet" type="text/css"/>
    <script type="text/javascript">
            alert(document.getElementById("defaultActive").style.marginLeft)
    </SCRIPT>
  </HEAD>
  <BODY>
    <!-- МЕСТО №2 -->
    <DIV id="mydiv">
        <span id="myspan"></span>
    </DIV>
    <!-- МЕСТО №3 -->
  </BODY>
</HTML>


В CSS описывается правило:

Код

#mydiv #myspan{
    MARGIN-LEFT:10px;
}


Желаем получить alert, выводящий значение "10px" 

Если запустить этот код то в случае когда он находится там, где он находится сейчас или в месте №2 получим ошибку message: Statement on line 5: Could not convert undefined or null to object Ну или нечто похожее в зависимости от браузера. Так вопрос почему происходит ошибка? Неужели чтобы добраться до какого конкретного элемента весь код JS должен располагаться ниже него? Как мне оставить весь код в теге HEAD и заставить его работать?


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
Zeroglif
Дата 7.8.2007, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



Цитата(Royan @  7.8.2007,  01:04 Найти цитируемый пост)
Так вопрос почему происходит ошибка?

Потому что парсер ещё не дошёл до нужного элемента.

Цитата(Royan @  7.8.2007,  01:04 Найти цитируемый пост)
Неужели чтобы добраться до какого конкретного элемента весь код JS должен располагаться ниже него?

Или ниже, или по событию onload.

p.s.
- в показанном коде нет элемента с id="defaultActive";
- через элемент.style. можно достать стили, которые живут непосредственно в теге (inline);
PM MAIL WWW   Вверх
Royan
Дата 7.8.2007, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: 1
Всего: 15



Zeroglif, Все вспомнил спасибо! smile


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0755 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.