Показать сообщение отдельно
  #4 (permalink)  
Старый 08.01.2011, 20:11
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от FL@$H
var obj[i] = document.createElement('div');
у переменной не может быть имени obj[i]

Сообщение от FL@$H
parent = document.getElementsByTagName('body')[0];
всегда объявляй переменные с помощью var (var parent = ...). Ты только что изменил значение глобальной переменной

кроме того, получить доступ к body можно намного проще: document.body

Сообщение от FL@$H
Перед </html> вызываю
<script type="text/javascript">         window.onload = create_object();     </script>
если ты размещаешь скрипт перед закрывающим тэгом body, нету смысла использовать window.onload

кроме того, create_object() - это вызов функции, а ты собирался назначить обработчик события: window.onload = create_object;

Сообщение от FL@$H
Но с массивами было бы удобно хранить обьекты и в дальнейшем взаимодействовать с ними.
var planets = [];
var names = ['Mercury', 'Venus', 'Earth'];
for( var i=0; i<names.length; i++ ){
    var planet = document.createElement('div');
    planet.className = 'planet';
    planet.innerHTML = names[i];
    document.body.appendChild( planet );
    planets.push( planet );
}


Сообщение от FL@$H
var i=0; // global
не используй глобальные переменные, тем более в случаях, когда это не нужно

Сообщение от FL@$H
var a = document.getElementsByClassName(object_1');
getElementsByClassName - это не кроссбраузерно

Сообщение от FL@$H
А оно видит только getElementsByClassName('object_1')[0], а getElementsByClassName('object_1')[1] нет...
как ты определил, что оно не видит getElementsByClassName('object_1')[1]? Оно не может не видеть:
<!DOCTYPE HTML>
<html>
  <head>   
  </head>
  <body>   

  <div class="object_1"></div>
  <div class="object_1"></div>

  <script>
    alert(document.getElementsByClassName('object_1').length);
  </script>
  
  </body>
</html>
Ответить с цитированием